获取可在Android上分享内容的应用程序列表

时间:2013-08-15 18:09:23

标签: android

当我使用intent.ActionSend时,android会显示一个对话框,其中包含发送此内容的所有posibles位置。

Android share list

我想知道是否可以获取所有应用程序的列表,我可以分享,并且有类似的内容:

List<String> shareoptions --> {com.facebook, com.gmail, com.whatever...}
非常感谢你。

1 个答案:

答案 0 :(得分:0)

您可以执行this

之类的操作
List<ResolveInfo> rInfo =  getActivity().getPackageManager().queryIntentActivities(createShareIntent(),0);

private Intent createShareIntent() {
        Intent shareIntent = new Intent(Intent.ACTION_SEND);
        shareIntent.putExtra(Intent.EXTRA_TEXT,"Text to share");
        shareIntent.setType("text/plain");
        return shareIntent;
    }


List<String> shareoptions = new ArrayList<String> ();

获取包名称列表:

for(ResolveInfo r:rInfo){
 String packageName = r.activityInfo.packageName;
 // do whatever you want to do here. Populate your own list view
 shareoptions.add(packageName);
}