12

我想知道如何從Android應用向我所有的Facebook朋友發送應用請求。我試圖在圖形API。但是,無法完成。使用Android中的'請求對話框'向Facebook中的所有朋友發送應用請求

https://graph.facebook.com/apprequests?ids=friend1,friend2&message='Hi'&method=post&access_token=ACCESS_TOKEN 

我知道這是一個重複的問題。但是,還沒有找到答案。 我在上面的API中收到這個錯誤。

"All users in param ids must have accepted TOS." 

我希望有一種方法可以通過點擊向移動設備上的所有朋友發送應用請求。請分享。

+0

你有應用程序請求的類型要張貼在朋友的牆上,任何PIC或樣品。 –

回答

0

你在developer.facebook.com上看過「Hackbook」的演示嗎?

你可以參考HACKBOOK APP REQUEST FROM HERE.

可以實現通過下面的代碼來發布應用請求您ONLY ONE朋友。

代碼:

Bundle params = new Bundle(); 

      JSONObject attachment = new JSONObject(); 
      JSONObject properties = new JSONObject(); 
      JSONObject prop1 = new JSONObject(); 
      JSONObject prop2 = new JSONObject(); 
      JSONObject media = new JSONObject(); 
      JSONStringer actions = null; 
      try { 
       attachment.put("name", "YOUR_APP"); 
       attachment.put("href", "http://www.google.com/"); 
       attachment.put("description", "ANY_TEXT"); 
       media.put("type", "image"); 
       media.put("src", "IMAGE_LINK"); 
       media.put("href", "http://www.google.com/"); 
       attachment.put("media", new JSONArray().put(media)); 
       prop1.put("text", "www.google.com"); 
       prop1.put("href", "http://www.google.com"); 
       properties.put("Visit our website to download the app", prop1); 
       /* prop2.put("href", "http://www.google.com"); 
       properties.put("iTunes Link  ", prop2);*/ 
       attachment.put("properties", properties); 
       Log.d("FACEBOOK", attachment.toString()); 

       actions = new JSONStringer().object() 
          .key("name").value("APP_NAME") 
          .key("link").value("http://www.google.com/").endObject(); 

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

      System.out.println("ACTIONS STRING: "+actions.toString()); 
      System.out.println("ATTACHMENT STRING: "+attachment.toString()); 

      params.putString("actions", actions.toString()); 
      params.putString("attachment", attachment.toString()); // Original 
      params.putString("to", "YOUR_FRIEND_FACEBOOK_ID"); 
      Utility.mFacebook.dialog(getParent(), "stream.publish", params,new PostDialogListener()); 



public class PostDialogListener extends BaseDialogListener { 
    @Override 
    public void onComplete(Bundle values) { 
     final String postId = values.getString("post_id"); 
     if (postId != null) { 
      Toast.makeText(getApplicationContext(), ""+getResources().getString(R.string.facebook_response_msg_posted), Toast.LENGTH_SHORT).show(); 
     } else { 
      Toast.makeText(getApplicationContext(), ""+getResources().getString(R.string.facebook_response_msg_not_posted), Toast.LENGTH_SHORT).show(); 
     } 
    } 
} 

上面的代碼,如果你想發佈Apprequest僅在一個朋友的牆壁運行完美。如果你想發佈所有內容,那麼你必須製作asynckTask,它爲所有朋友發佈並在所有牆上發佈應用請求。

希望你明白了。

更新

這裏是做了同樣的工作,以請求發送給所有的Facebook朋友在PHP中的鏈接。 鏈接是:HERE

而這裏很明顯地解釋說,它是通過臉書向朋友發送請求到更多然後15-20個朋友。鏈接如下:HERE

現在,您只有一個選擇:在AsyncTask中使用上面的代碼將朋友請求發送給所有朋友一個接一個。

希望你現在能更好地理解。

請評論你到現在爲止的成就。

謝謝。

+0

它將在朋友牆上發佈關於該應用的信息。 – Gugan

+1

應用程序請求不得轉到牆上,它必須轉到用戶通知或應用程序請求列表 – Gugan

+0

它將在通知上。 –

5

您收到的錯誤消息(「參數ID中的所有用戶都必須接受TOS」)是因爲您嘗試將應用程序生成的請求發送給未連接到應用程序的用戶。

查看developer docs here

與請求對話框一起發送的請求和應用生成的請求是不同的,您不能使用應用生成的請求來邀請用戶加入您的應用。

通過圖表api無法發送Facebook應用程序請求。您可以使用app requests java-script dialog來發送請求,但您只需在文檔中詳細說明在「to」屬性中指定用戶的標識。

採樣功能:

<script> 
    FB.init({ appId: '**appId**', status: true, cookie: true, xfbml : true }); 

    function sendRequest(to) { 
    FB.ui({method: 'apprequests', to: to, message: 'You should learn more about this awesome site.', data: 'tracking information for the user'}); 
    return false; 
    } 
</script> 

然後剛絲爲每個圖像一個onclick喜歡的東西onclick="return sendRequest('**friendId**');"

你也可以調用在JavaScript這樣的功能:它會給你的照片所有的朋友。還有一羣正在使用相同應用的朋友。您可以向其中的任何人發送請求。

function sendRequestViaMultiFriendSelector() { 
    FB.ui({ 
     method: 'apprequests', 
     message: "You should learn more about this awesome site." 
    });  
} 

Facebook Friend Request - Error - 'All users in param ids must have accepted TOS'

+0

我想從應用程序發送它。 – Gugan

+0

然後,您只能將其發送給安裝了您的應用的用戶 – Igy

相關問題