2012-10-21 46 views
3

我正在使用剛剛在Android上發佈的新Facebook SDK 3.0。我想讓用戶邀請他/她的朋友加入應用使用新的Android SDK 3.0邀請好友請求

但是,在新的SDK中,您不會創建帶有應用程序ID的新Facebook對象。您延長FacebookActivity作爲教程給出:http://developers.facebook.com/docs/tutorials/androidsdk/3.0/scrumptious/authenticate/

因此,由於沒有Facebook的對象調用對話框方法上我無法使用提供發送邀請朋友參考材料。 http://developers.facebook.com/docs/howtos/androidsdk/3.0/send-requests/

我已經設置已經在朋友選擇器UI,並能得到GraphUser對象的用戶選擇。 HTTP://開發商(點)的Facebook(點)的COM /文檔/教程/ androidsdk/3.0 /美味/顯示-朋友/

但是,我無法弄清楚如何邀請朋友用戶已選擇

有沒有人知道如何邀請朋友在新的SDK?你會使用FbDialog類嗎?如果是這樣,那麼需要提供的url字符串是什麼? (我嘗試使用「apprequests」,但這並不奏效)

感謝您的幫助。

回答

4

可以使用com.facebook.widget.WebDialog類這樣的:

WebDialog dialog = new WebDialog.Builder(myActivity, mySession, ...).build(); 
dialog.show(); 

另見輔助類WebDialog.FeedDialogBu​​ilder和WebDialog.RequestsDialogBu​​ilder,使其更容易建立這些對話框。

+0

謝謝!沒有意識到做舊的方式不被棄用。 – Bala

+0

此方法已被棄用,實際上實例化「Facebook」類已被棄用。請提供其他解決方案。 –

+0

已更新說明以反映最終比特中的新API。 – rightparen

8

嘗試此鏈接:

https://developers.facebook.com/docs/howtos/androidsdk/3.0/send-requests/

private void sendRequestDialog() { 
    Bundle params = new Bundle(); 
    params.putString("message", "Learn how to make your Android apps social"); 
    WebDialog requestsDialog = (
     new WebDialog.RequestsDialogBuilder(getActivity(), 
      Session.getActiveSession(), 
      params)) 
      .setOnCompleteListener(new OnCompleteListener() { 

       @Override 
       public void onComplete(Bundle values, 
        FacebookException error) { 
        final String requestId = values.getString("request"); 
        if (requestId != null) { 
         Toast.makeText(getActivity().getApplicationContext(), 
          "Request sent", 
          Toast.LENGTH_SHORT).show(); 
        } else { 
         Toast.makeText(getActivity().getApplicationContext(), 
          "Request cancelled", 
          Toast.LENGTH_SHORT).show(); 
        } 
       } 

      }) 
      .build(); 
    requestsDialog.show(); 
} 
+0

嗨,在舊的我會像這樣添加params.putString(「to」,userIDString); params.putString(「message」,Message);.現在我會給朋友用戶標識? – Jeeva123

+1

@Ramachandran使用setTo(String id)方法。 https://developers.facebook.com/docs/reference/android/3.0/WebDialog.RequestsDialogBu​​ilder – ChangUZ