【安卓面試題】在一個Activity啟動另一個Activity和在Service中啟動一個Activity有什么區別


在Activity中可以直接使用Intent啟動另一個Activity

顯式Intent intent = new Intent(context, activity.class)

隱式 Intent intent = new Intent(“com.aa.www.act”);

startActivity(intent);

 

如果從Service中用同樣方法啟動Activity 的話,會報錯:

android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAGACTIVITYNEWTASK flag. Is this really what you want?

 

需要設置 intent.setFlags(Intent.FLAGACTIVITYNEWTASK); 再開啟activity 代碼如下 :

Intent intent = new Intent("hahaha.hahaha");

intent.setFlags(Intent.FLAGACTIVITYNEW_TASK);

startActivity(intent);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM