Android ACTION_SEND每个应用程序的不同文本

时间:2011-03-15 15:14:52

标签: android

我正在使用ACTION_SEND的Intent,我需要分享不同的文本。我需要发送Gmail文本,我需要发送其他文本的twitter。取决于应用程序。我可以在应用程序发送共享文本之前获取用户选择的应用程序吗?

3 个答案:

答案 0 :(得分:4)

是的,您可以在应用程序发送共享文本之前获取用户选择的应用程序。为此,你必须做一个解决方法,即:

您必须通过以下方式获取此意图支持的应用程序列表:

Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
List activities = getPackageManager().queryIntentActivities(sharingIntent,0);

获取列表。我们可以构建一个警告对话框,然后为不同的应用程序创建监听器。

答案 1 :(得分:3)

通常,您无法确定哪个应用程序会收到您的ACTION_SEND意图。

This answer解释了为什么您可能不应该根据预测用户最终会使用哪个应用程序来进行自定义。

This answer解释了TwiDroyd的解决方法,您可能不应该使用它,但可能会在短期内帮助您。

答案 2 :(得分:0)

我不知道让用户选择的应用程序发送内容。

但您可以使用IntentResolver以编程方式选择apk来打开您的意图。