相关疑难解决方法(0)

使用Android意图在Facebook和Twitter上发布不同的文本

我想让我的Android应用程序的用户在fb,twitter上发布一些数据并将其通过电子邮件发送给某人.我正在使用Intent.ACTION_SEND.我可以添加电子邮件主题并添加测试作为Intent.EXTRA_TEXT.但我希望将不同的文本发送给不同的应用程序.就像要发送到Twitter的文本一样短,要发送到Facebook的文本将有链接和镜头描述,并且ein电子邮件具有所有内容.我怎样才能实现这样的功能?最多我可以让facebook和twitter采用相同的文字,但不同于电子邮件中的内容.

twitter android facebook android-intent

9
推荐指数
1
解决办法
1751
查看次数

如何从ACTION_SEND意图中排除特定的应用程序?

我使用以下代码从我的应用选择器中排除Facebook应用:

 List<Intent> targetedShareIntents = new ArrayList<Intent>();
    Intent intent = new Intent(android.content.Intent.ACTION_SEND);
    intent.setType("image/*");
    List<ResolveInfo> resInfo = getActivity().getPackageManager().queryIntentActivities(intent, 0);
    if (!resInfo.isEmpty()) {
        for (ResolveInfo resolveInfo : resInfo) {
            String packageName = resolveInfo.activityInfo.packageName;
            Intent targetedShareIntent = new Intent(android.content.Intent.ACTION_SEND);
            targetedShareIntent.setType("image/*");
            targetedShareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "tooter.nl");
            if (!TextUtils.equals(packageName, "com.facebook.katana")) {


                targetedShareIntent.putExtra(android.content.Intent.EXTRA_TEXT, st);
                targetedShareIntent.putExtra(Intent.EXTRA_STREAM, screenshotUri);
                targetedShareIntent.setPackage(packageName);
                targetedShareIntents.add(targetedShareIntent);
            }

        }
        Intent chooserIntent = Intent.createChooser(targetedShareIntents.remove(0), "Select app to share");
        chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, targetedShareIntents.toArray(new Parcelable[targetedShareIntents.size()]));
        startActivity(chooserIntent);
    }
Run Code Online (Sandbox Code Playgroud)

我使用代码时删除了Facebook应用程序.但令人遗憾的是,甚至Twitter应用程序也被从应用程序选择器中删除,其他不必要的应用程序如"Android系统"列在选择器上.我该怎么办 ?这段代码有什么缺失或错误吗?

android android-intent

6
推荐指数
4
解决办法
3365
查看次数

标签 统计

android ×2

android-intent ×2

facebook ×1

twitter ×1