2012-10-21 41 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