2013-07-01 1 views
6

개요에서 내 연락처의 연락처 사진을 보여주는 SMS 앱을 작성했습니다.외부 (예 : 페이스 북) 연락처 사진 android

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

문제는 다음과 같습니다 : 연락처 사진 예에서 제공하는 "정상"사진을 얻기

아무 문제 없다 페이 스북 (Facebook)이 없으면 어떻게 이러한 "외부"사진을 얻을 수 있습니까?

+0

여기 내가 대답했다 : http://stackoverflow.com/questions/3709607 – AndyBeans

+0

hm. [연결된 답변] (http://stackoverflow.com/questions/3845570/get-contacts-photo-which-are-synced-with-facebook-for-android/4506152#4506152) 내가 페이스 북 API가 필요하다고 말합니다. 인터넷 사용 권한을 추가하고 싶지 않습니다. – kelunik

+0

Facebook에서 사진을 요청하기 때문에 API를 사용해야합니다. 한 가지 가능한 해결 방법은 facebook 앱 폴더에서 사용자 친구의 현금화 된 이미지를 읽는 것이지만 최신 버전의 Facebook 앱이 동일한 폴더를 사용할 지 확신 할 수 없습니다. – PSIXO

답변

0

저는이 주제에 대해 많은 연구를했습니다. 페이스 북은 몇 가지 시스템 앱과 타사 앱에 의한 액세스 만 허용하는 일부 권한을 부여한 것 같습니다. https://groups.google.com/forum/#!topic/android-developers/lREN16Hh4LQ

나는 또한 페이스 북의 응용 프로그램에서의 AndroidManifest.xml 파일을 디코딩하려고했지만 심지어 그들이 나에게 액세스 권한을 부여하지 않았다 내부적으로 사용 권한을 추가 :

예를 들어이 링크를 참조하십시오.

사용자는 자신의 동기화 도구 (플레이 스토어에서 사용 가능)를 설치하여 연락처를 Facebook과 동기화 할 수 있습니다. 이것은 잘 작동합니다. 도구를 설치 한 장치에서 프로필 이미지를로드 할 수 있습니다.

개인적으로 나는 페이스 북이 그러한 액세스를 제한한다는 것에 약간 실망합니다. 사용자가 이에 대한 사용자 지정 권한을 추가해야합니다.