在Intent Chooser屏幕中回调自定义项目

时间:2015-09-23 21:31:26

标签: android android-intent android-intent-chooser

我的用例是从Intent Chooser的自定义下载选项下载图像。我了解我可以通过添加以下代码来添加自定义选项:

Intent share = new Intent(Intent.ACTION_SEND);
share.setType("text/plain");       
share.putExtra(Intent.EXTRA_TEXT, message);

Intent addIntent = ;//whatever you want

Intent chooser = new Intent(Intent.ACTION_CHOOSER);
chooser.putExtra(Intent.EXTRA_INTENT, share );      
chooser.putExtra(Intent.EXTRA_TITLE, "title");

Intent[] intentArray =  {addIntent }; 
chooser.putExtra(Intent.EXTRA_INITIAL_INTENTS, intentArray);
startActivity(chooser);

我也有适当的功能,可以为我下载图像。我的问题是,我是否可以检测到用户选择/单击了自定义选项,然后直接设置回调到我的下载功能并继续下载操作?

注意:我不想在此过程中启动任何新活动。只是寻找关于如何在选择器中为这个自定义选项设置回调的指针。

1 个答案:

答案 0 :(得分:3)

  

我是否可以检测到用户选择/单击了自定义选项,然后直接设置回调到我的下载功能并继续执行下载操作?

仅在Android 5.1+上,如果您使用the three-parameter flavor of createChooser(),您可以在其中提供已通知选项的IntentSender ...然后仅在"设置回拨到我的下载功能直接进行下载操作"你的意思是"启动一个进行下载的活动"。

否则,您需要滚动自己的选择器式UI,然后使用用户的选择来制作明确的Intent以将用户路由到所请求的活动。