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