意圖
使用隱含意圖的注意事項
在呼叫隱式意圖時,檢查系統是否可以處理隱藏意圖總是有幫助的。
這可以通過使用 PackageManager.queryIntentActivities(Intent intent, int flags)
進行檢查來完成
PackageManager pm = getActivity().getPackageManager();
if (intent.resolveActivity(pm) != null) {
//intent can be handled
startActivity(intent);
} else {
//intent can not be handled
}
開始活動,這是一個 singleTask
或 singleTop
當活動的啟動模式為 singleTask
或 singleTop
時,只要活動以資料 null 啟動,就會呼叫 onActivityResult
。要防止這種情況,請使用 Intent.setFlags(0)
重置預設標誌。