2016-05-02 7 views
1

アンドロイドでfacebook SDKを使って作業するのは初めてです。そのため、Facebookのアプリケーションを使ってサインインした後です!私は私のinvitable_friendsを検索し、アンドロイドのfacebook SDKを使用して、どのように友人を招待しますか?

 new GraphRequest(
      AccessToken.getCurrentAccessToken(), 
      "/me/invitable_friends", 
      null, 
      HttpMethod.GET, 
      new GraphRequest.Callback() { 
       public void onCompleted(GraphResponse response) { 

        try { 
         JSONObject object = new JSONObject(response.getRawResponse()); 
         JSONArray array = object.getJSONArray("data"); 
         for (int i = 0; i < array.length(); i++) { 
          JSONObject jsonObject = array.getJSONObject(i); 
          String id = jsonObject.optString("id"); 
          String name = jsonObject.optString("name"); 
          String url = jsonObject.optJSONObject("picture").optJSONObject("data").optString("url"); 
          Person person = new Person(id,name,url); 
          person.setId(id); 
          person.setName(name); 
          person.setUrl(url); 
          list.add(person); 

         } 
        } catch (JSONException e) { 
         e.printStackTrace(); 
        } 

        listView.setAdapter(new FriendsAdapter(getApplicationContext(),list)); 

は、今私がクリックしたときに自分のアプリケーションを使用するために友人に招待状を送信する必要があるリストビューでそれらを示しています。

はので、私は、プロセスの成功または失敗

appInviteDialog = new AppInviteDialog(this); 
    appInviteDialog.registerCallback(callbackManager, new FacebookCallback<AppInviteDialog.Result>() { 
     @Override 
     public void onSuccess(AppInviteDialog.Result result) { 
      Log.d("Yehia","onSuccess result = "+ result.getData().toString()); 
     } 

     @Override 
     public void onCancel() {} 

     @Override 
     public void onError(FacebookException e) { 
      Log.d("Yehia","onError message = "+ e.getMessage()); 
     } 
    }); 

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    callbackManager.onActivityResult(requestCode, resultCode, data); 

} 

で追跡することが、

 listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
         @Override 
         public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 

          String appLinkUrl; 

          appLinkUrl = "Application Link"; 

          if (AppInviteDialog.canShow()) { 
           AppInviteContent content = new AppInviteContent.Builder() 
             .setApplinkUrl(appLinkUrl) 
             .build(); 
           AppInviteDialog.show(FriendsList.this, content); 
          } 

         } 
        }); 
       } 
      } 
    ).executeAsync(); 

OnItemClickListener にと残念ながら常にのonErrorと呼ばれることを扱います! 私はいくつかの誤解があることを知っています。 私はどんなボディも助けてくれます! 注:私のリンクアプリケーションはまだ動作しません!ありがとうございます。

+0

あなたの完全なlogcat @Mohamed Yehiaを投稿してください – Lampard

答えて

0

実際に私はv4.0.0に切り替えると、SDK v4.11.0を使用していました。

関連する問題