android – 检测用于共享某些内容的共享者

android – 检测用于共享某些内容的共享者,第1张

概述在我目前正在处理的应用程序中,我需要知道用户用来共享内容以进行统计目的的“ACTION_SEND sharer”(Twitter,Facebook,SMS,Email …).反正有吗? 我有一些想法,其中一个是修改那些共享者的目标Intent指向接收共享者选择的接收者Intent,用这些数据做我们需要的任何事情,然后调用最终的Intent到目标共享者(Twitter, Facebook,短信,电子 在我目前正在处理的应用程序中,我需要知道用户用来共享内容以进行统计目的的“ACTION_SEND sharer”(Twitter,Facebook,SMS,Email …).反正有吗?

我有一些想法,其中一个是修改那些共享者的目标Intent指向接收共享者选择的接收者Intent,用这些数据做我们需要的任何事情,然后调用最终的Intent到目标共享者(Twitter,短信,电子邮件……).对于最后一步,我想我需要知道每个目标应用程序的共享 *** 作.

问候

UPDATE1

为了说明,我分享了我目前用来共享内容的方法,根据目标共享者自定义Intent附加功能:

private voID shareItem(String Title,String link) {    // Standard message to send    String msg = Title + " " + link;    Intent share = new Intent(Intent.ACTION_SEND);    share.setType("text/plain");    List<ResolveInfo> resInfo = getPackageManager().queryIntentActivitIEs(share,0);    if (!resInfo.isEmpty()) {        List<Intent> targetedShareIntents = new ArrayList<Intent>();        Intent targetedShareIntent = null;        for (ResolveInfo resolveInfo : resInfo) {            String packagename = resolveInfo.activityInfo.packagename;            targetedShareIntent = new Intent(androID.content.Intent.ACTION_SEND);            targetedShareIntent.setType("text/plain");            // Find twitter: com.twitter.androID...            if ("com.twitter.androID".equals(packagename)) {                targetedShareIntent.putExtra(androID.content.Intent.EXTRA_TEXT,msg);            } else if ("com.Google.androID.gm".equals(packagename)) {                targetedShareIntent.putExtra(androID.content.Intent.EXTRA_SUBJECT,Title);                targetedShareIntent.putExtra(androID.content.Intent.EXTRA_TEXT,Uri.encode(Title + "\r\n" + link));            } else if ("com.androID.email".equals(packagename)) {                targetedShareIntent.putExtra(androID.content.Intent.EXTRA_SUBJECT,Uri.encode(Title + "\n" + link));            } else {                // Rest of Apps                targetedShareIntent.putExtra( androID.content.Intent.EXTRA_TEXT,msg);            }            targetedShareIntent.setPackage(packagename);            targetedShareIntents.add(targetedShareIntent);        }        Intent chooserIntent = Intent.createChooser(targetedShareIntents.remove(0),getResources().getString(R.string.share));        chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS,targetedShareIntents.toArray(new Parcelable[] {}));        startActivityForResult(chooserIntent,0);    }}

解决了

按照此链接上的指示:http://goo.gl/hf8Kg

解决方法

Is there anyway to do that?

您可以通过PackageManager和queryIntentActivitIEs()显示您自己的选择器对话框.

总结

以上是内存溢出为你收集整理的android – 检测用于共享某些内容的共享者全部内容,希望文章能够帮你解决android – 检测用于共享某些内容的共享者所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1124646.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存