我的应用程序中有一个共享按钮,可以共享在我的应用程序中创建的png / txt / pdf / etc ..文件。
当我单击它时,将显示共享Android托盘以及所有可用于共享的应用程序。显示许多应用程序(Gmail,驱动器,Whatsapp,电报,Skype,OneDrive等),但不显示Dropbox(已安装在我的设备上)。
这是我用于共享的代码:
Intent emailIntent = new Intent(Intent.ACTION_SEND_MULTIPLE);
emailIntent.setType("vnd.android.cursor.dir/email");
emailIntent.putExtra(Intent.EXTRA_SUBJECT, emailTitle);
String text = "xxxxxx";
emailIntent.putExtra(Intent.EXTRA_TEXT, text);
emailIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
ArrayList<Uri> uris = getUris();
emailIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
activity.startActivityForResult(Intent.createChooser(emailIntent , "Send email..."), 12);
我该怎么办才能在系统建议共享的应用程序列表中同时包含Dropbox?
谢谢!
答案 0 :(得分:1)
您无法控制“共享”托盘中显示的内容。您可以只指定您的意图。我的意思是,如果所安装的任何应用程序支持该意图的类型,那么您的意图将共享什么,它将由系统自动在“共享”托盘中填充
一些发送文件的示例代码
final Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(Intent.EXTRA_TEXT, shareText);
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
intent.setType("image/png");
startActivity(Intent.createChooser(intent, "Share image via"));