Android “打开时填写数据”;贴在墙上;对话
在我的应用程序中,用户可以通过以下方式与不同的应用程序共享信息:Android “打开时填写数据”;贴在墙上;对话,android,facebook,post,Android,Facebook,Post,在我的应用程序中,用户可以通过以下方式与不同的应用程序共享信息: shareIntent.putExtra(Intent.EXTRA_SUBJECT, "Link from my APP"); shareIntent.putExtra(Intent.EXTRA_TEXT, "http://aaa.com/"); startActivity(Intent.createChooser(shareIntent,"Share via:")); 它工作正常。/gmail、短信、谷歌+/ 唯一有问题的应用
shareIntent.putExtra(Intent.EXTRA_SUBJECT, "Link from my APP");
shareIntent.putExtra(Intent.EXTRA_TEXT, "http://aaa.com/");
startActivity(Intent.createChooser(shareIntent,"Share via:"));
它工作正常。/gmail、短信、谷歌+/
唯一有问题的应用是Facebook。它启动对话框,但字段中没有信息。
尝试了不同的标签,但什么都没有:(
唯一的结果是:如果我把URL作为额外的文本-它不会显示为文本,但Facebook对话框从URL读取标记并将它们放置在对话框框架上
任何在对话框中填充数据的想法。
已经有代码可以在有或没有对话框的情况下共享wia sdk,但由于某些原因,这并不好。您需要集成facebook sdk 浏览下面的链接,它展示了如何集成facebook sdk [http://developers.facebook.com/docs/mobile/android/sso/][1] 您需要在java文件中放入一些代码,如下所示
try {
String response = facebook.request("me");
Bundle parameters = new Bundle();
parameters.putString("message", " your link");
parameters.putString("description", "");
response = facebook.request("me/feed", parameters,
"POST");
Log.d("Tests", "got response: " + response);
if (response == null || response.equals("") ||
response.equals("false")) {
Log.v("Error", "Blank response");
}
} catch(Exception e) {
e.printStackTrace();
}
在放入正确的Android密钥散列后,所有问题都会消失。
现在共享工作正常。我已经有了这段代码。问题是:我想让用户有机会从列表“Intent.createChooser”中选择应用程序……我不知道所选的应用程序,所以我必须将数据放入Intent并提供适当的标记。