contactScontracts APIを介してユーザーからFacebook IDを取得するにはどうすればよいですか?
-
11-10-2019 - |
質問
アドレス帳をFacebookと同期し、アドレスブックからFacebookのプロフィールにアクセスできるようになりました。別のアプリケーションからアカウントに接続されているFacebookデータを読み、同期したユーザーのFacebook IDを取得したいと思います。
Facebookに関連するものを含むcontactcontracts.dataテーブルには、mimetypeまたはデータフィールドが見つかりません。 Anybodeはこれを正常に行いましたか?
Facebookは何らかの形でこのデータへの許可を制限しているようです。これはどのように行われ、どのアクセス許可に、アドレス帳に同期されているFacebookの連絡先情報にアクセスする必要がありますか?
解決 3
これは、これまで公式のAPIにとって不可能だと思われます。 例外 これは、GoogleによるFacebookアプリ用に作成されました。 Facebookが次のバージョンでOffical Android APIに準拠していることを願っています。
他のヒント
ユーザーが連絡先にその情報を持っている場合、彼らはFacebookでその人との友達でもあります。グラフAPIを使用して、友人のリストを取得し、選択した連絡先名でフィルタリングするか、Facebook APIクエリの返された名前から作成されたリストビューからユーザーを選択させます。
try {
JSONObject response = Util.parseJson(facebook.request(
"/me/friends", new Bundle(), "GET"));
JSONArray jArray = response.getJSONArray("data");
for (int i = 0; i < jArray.length(); i++) {
JSONObject json_data = jArray.getJSONObject(i);
tempMap = new HashMap<String, Object>();
tempMap.put("friend", json_data.getString("name"));
tempMap.put("id", json_data.getString("id"));
friendlist.add(tempMap);
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (FacebookError e) {
e.printStackTrace();
}
また、APIを使用して作業することを検討することもできます Android SDK Gigya.comから提供されています(最近まで働いていた場所)。
所属していません StackOverflow