我发送了一个带有Intent.ACTION_SEND
操作的Intent
。这工作正常,用户可以选择要共享的应用程序等等。
问题在于他们何时选择 Facebook Messenger 进行共享。我得到的只是一个白色的模态屏幕,左上角有“发送到”,右上角有一个搜索图标。
这是启动 Intent 的代码。
Intent appIntent = new Intent(Intent.ACTION_SEND);
appIntent.setType("text/plain");
appIntent.putExtra(Intent.EXTRA_TEXT,"Check out this app. \nhttp://www.boxshark.co.uk");
appIntent.putExtra(Intent.EXTRA_SUBJECT,"Get the Boxshark app");
startActivity(Intent.createChooser(appIntent,"Share"));
我了解到 Facebook 在您使用共享 Intent 时不允许预填文本,因此我的“查看此应用程序”文本已被删除。但是,我不明白为什么 Facebook Messenger 应用程序没有执行任何操作。
有什么想法吗?你能看出我的 Intent 有什么问题吗?
最佳答案
PackageManager pm=getPackageManager();
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("image/jpeg");
Uri uri = Uri.parse("android.resource://1/"+2);
i.putExtra(Intent.EXTRA_STREAM, uri);
PackageInfo info=pm.getPackageInfo("com.facebook.orca", PackageManager.GET_META_DATA);
i.setPackage("com.facebook.orca");
startActivity(Intent.createChooser(i, "Share with"));
1.你的包名显示在文件的第一行
2.你想要分享的srting图片int值
"com.facebook.orca"是 facebook 按摩器包
它对我有用,希望你也有用
关于android - 分享 Intent 不适用于 Facebook Messenger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26018652/