如何从Android服务中使用ACTION_SEND Intent启动活动?

时间:2014-11-19 02:58:19

标签: java android android-intent

我添加了标志“FLAG_ACTIVITY_NEW_TASK”,但我一直收到运行时错误“从Activity上下文调用startActivity()需要FLAG_ACTIVITY_NEW_TASK标志。”

Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
shareIntent.putExtra(Intent.EXTRA_SUBJECT, "Shared via app |"+title);
shareIntent.putExtra(Intent.EXTRA_TEXT, Link);
startActivity(Intent.createChooser(shareIntent, "Share link!"));

我知道我可以在Activity中使用此代码,但有没有办法直接通过服务共享?

1 个答案:

答案 0 :(得分:0)

您需要将标志添加到createChooser Intent:

Intent chooserIntent = Intent.createChooser(shareIntent, "Share");
chooserIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(chooserIntent);