如何在安卓系统中显示所有共享选项?

3

我正在开发一个Android应用程序,想通过打开设备中所有可用的共享选项来分享一些文本。但是目前列表显示的只有电子邮件、蓝牙、Gmail和短信。

其他应用程序(如BBC新闻)在同一设备上显示更多选项,如Bump、Picasa等。如何显示所有可用选项并处理它们?

我正在使用以下代码:

Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/vcard");
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT,mailBody);            
startActivity(Intent.createChooser(sharingIntent,"Share using"));   

在清单文件中。
 <intent-filter>
  <action android:name="android.intent.action.SEND" />
  <category android:name="android.intent.category.DEFAULT" />
  <data android:mimeType="text/plain"/>
  </intent-filter>

如果问题没有解决,那么请使用 <data android:mimeType="image/*"> 而不是 <data android:mimeType="text/plain"/>,这将显示所有选项,包括 Bump、Picasa。 - ρяσѕρєя K
3个回答

8

这是因为你只显示了已注册处理 text/vcard 的意图。应该使用

sharingIntent.setType("text/plain");

分享通过蓝牙或短信等方式后,屏幕变黑,如何解决这个问题,以便返回之前的屏幕。 - AndDev21

1
Intent i=new Intent(android.content.Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(android.content.Intent.EXTRA_SUBJECT,"Subject test");
i.putExtra(android.content.Intent.EXTRA_TEXT, "extra text that you want to put");
startActivity(Intent.createChooser(i,"Share via"));

@AndDev21 很乐意帮助,如果这个答案对你有帮助,请标记为已接受,这样也可以帮助其他人。享受编程吧。 - Jogendra Gouda

0

仅分享文本,请使用 sharingIntent.setType("text/plain"); 而分享图像时,请使用 sharingIntent.setType("image/*");


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接