2013-06-03 104 views
0

我想從我的應用程序發送到Facebook和其他應用程序的圖像和一些文字,以便用戶可以分享它們。目前我把文字和圖像的URI,但是當我選擇臉譜只有圖像發送。在whatsApp中也只有圖像被髮送。在Google+應用程序中,圖片和文字都會被傳遞。有人能告訴我正確的方向嗎?android ACTION_SEND圖像和文字

代碼示例(這裏我就不跟我有原代碼,現在,也許我會後再發布)

Intent shareIntent = new Intent(); 
shareIntent.setAction(Intent.ACTION_SEND); 
shareIntent.putExtra(Intent.EXTRA_STREAM, uriToImage); 
shareIntent.setType("image/png"); 
shareIntent.putExtra(Intent.EXTRA_TEXT , myText); 
startActivity(Intent.createChooser(shareIntent, "Choose an app")); 

如果我改變ACTION_SEND到ACTION_SEND_MULTIPLE那麼它不會在所有的工作。如果我將類型更改爲「text/plain」或html,那麼文本會發送到whatsapp,google +和Facebook Messenger,但不會在普通Facebook應用程序中打開(它將打開一個空白的共享對話框)。

回答

0

您必須使用以下行

  Intent sendIntent = new Intent(Intent.ACTION_SEND); 
      sendIntent.setType("image/*"); 
      sendIntent.putExtra(Intent.EXTRA_SUBJECT, "My image"); 
      sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(filename_toshare)));// this is for image . here filename_toshare is your file path. 
      sendIntent.putExtra(Intent.EXTRA_TEXT, "My Image ");// this is for text 
      startActivity(Intent.createChooser(sendIntent, "Email:")); 

希望這可以幫助你。

+0

此代碼意味着通過添加「EXTRA_SUBJECT」,我的「EXTRA_TEXT」也會被髮送?因爲我的代碼和我的代碼之間沒有任何區別。 – Panos

+0

實際上,在Facebook中,您無法通過操作send或actionsend multiple發送任何文本,因爲這是Facebook中的已知錯誤。但你可以發送文本到twitter,g +,gmail和all。這取決於應用程序..就像什麼應用程序也不允許我們從我們的應用程序發送文本。我們需要在那邊輸入。 – itsrajesh4uguys

+0

有什麼解決方法嗎?也許直接使用facebook Graph API? – Panos