2013-07-01 22 views
6

Napisałem aplikację do SMS-a, pokazującą zdjęcia kontaktów z moich kontaktów w przeglądzie.zewnętrzne (np. Facebook) zdjęcie kontaktu na Androidzie

Pierwsze „normalne” zdjęcia nie jest problemem:

Uri cu = ContentUris.withAppendedId(Contacts.CONTENT_URI, contactId); 
final InputStream input = Contacts.openContactPhotoInputStream(getContext().getContentResolver(), cu); 
return BitmapFactory.decodeStream(input); 

Problemem jest: Zdjęcia dostarczone przez np kontaktowe nie ma facebooka, w jaki sposób mogę uzyskać te "zewnętrzne" zdjęcia?

+0

Odpowiedź została odebrana tutaj: http://stackoverflow.com/questions/3709607 – AndyBeans

+0

hm. [połączona odpowiedź] (http://stackoverflow.com/questions/3845570/get-contacts-photo-which-s-synced-with-facebook-for-android/4506152#4506152) mówi, że potrzebuję api facebooka. Nie chcę dodawać pozwolenia internetowego. – kelunik

+0

Cóż, musisz użyć interfejsu API, ponieważ żądasz zdjęć z Facebooka. Jednym z możliwych sposobów obejścia tego problemu byłoby odczytanie zrealizowanych zdjęć znajomych użytkowników z folderu aplikacji Facebook, ale nie można mieć pewności, że nowsze wersje aplikacji Facebook będą używać tego samego folderu. – PSIXO

Odpowiedz

0

Zrobiłem dużo badań na ten temat. Wygląda na to, że Facebook wprowadził pewne uprawnienia, które umożliwiają dostęp tylko kilku aplikacjom systemowym i aplikacjom innych firm.

zobaczyć na przykład w ten link: https://groups.google.com/forum/#!topic/android-developers/lREN16Hh4LQ

Próbowałem też do dekodowania pliku AndroidManifest.xml z aplikacji Facebook, ale nawet dodając uprawnienia używają wewnętrznie nie udzieliła mi dostępu.

Użytkownicy mogą instalować własne narzędzia synchronizacji (dostępne w sklepie zabaw), aby zsynchronizować kontakt z Facebookiem. Działa to świetnie. Mogę załadować obrazy profili na urządzeniach z zainstalowanymi takimi narzędziami.

Osobiście jestem trochę zawiedziony, że Facebook ograniczy taki dostęp. Powinni dodać niestandardowe uprawnienia do tego.