android startActivity from intent in service [duplicate]

匿名 (未验证) 提交于 2019-12-03 08:48:34

问题:

This question already has an answer here:

i try to use intent in service but when i try this :

Intent intent_facebook = new Intent (this,MainUploadToYoutube.class); intent_facebook.putExtra("vid", vid); startActivity(intent_facebook); 

got this error on logcat :

Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? 

so i tried this from here :

android start activity from service

Intent  intent_facebook = new Intent(getBaseContext(), MainUploadToYoutube.class); intent_facebook.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); getApplication().startActivity( intent_facebook); 

but this do nothing and i did not get error in logcat

what wrong ?

回答1:

Have you tried your own code (using this as context), but just add the flags as the error tells you?

Intent intent_facebook = new Intent (this, MainUploadToYoutube.class); intent_facebook.putExtra("vid", vid); intent_facebook.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent_facebook); 


回答2:

this may help

in Service class you get context and initialize with Context mContext

 Intent intent = new Intent(mContext,MainUploadToYoutube.class);     intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);    ((Activity)mContext).startActivity(intent); 


回答3:

There is nothing wrong with your code. It should work. Your problem is something else. Make sure MainUploadToYoutube activity is defined in the manifest and app may not crash once this activity is lunched.



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!