1
我想构建一个Android插件来扩展ACTION_SEND功能,但是当我试图调用活动共享纯文本使用:我怎样才能调用startActivity()使用ACTION_SEND从不同的类
context.startActivity(Intent.createChooser(mIntent, title));
我得到这个错误:
ERROR/AndroidRuntime(838): android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
的事情是,在我的代码最后一行我已经FLAG_ACTIVITY_NEW_TASK实现。 这里是我的代码:
public class ShareMenu{
private Context context;
public ShareMenu(Context context){
this.context = context;
}
public static void buildHomeShareMenu(Context context) {
Intent mIntent = new Intent(android.content.Intent.ACTION_SEND);
mIntent.setType("text/plain");
mIntent.putExtra(Intent.EXTRA_TEXT, mtitle);
mIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(Intent.createChooser(mIntent, mtitle));
}
我试着打电话只是路过startActivity实例mIntent和作品,但即使我已经注意到,如果你只是做这些,你可以调用其他的活动,但我可以”弄清楚我怎么能通过静态意图。
在此先感谢。
@MisterSquonk我能叫呢?我试过mIntent.addFlags(mIntent.FLAG_ACTIVITY_NEW_TASK);我得到这个警告“应该以静态方式访问静态字段Intent.FLAG_ACTIVITY_NEW_TASK”,并在运行时执行中得到相同的错误:)。 – 2011-03-22 01:45:26