android:launchMode="singleTask" 和 onNewIntent(Intent intent)兩個特性,現總結一下經驗:
android:launchMode="singleTask" 配置在 Mainifest 中,它保證了棧中此Activity總是隻有一個,無論你啓動它多少次;
onNewIntent(Intent intent) 是Override Activity的父類方法,只有僅在點Home鍵退出Activity而再次啓動新的Intent進來才被調用到;
它們兩結合使用,可以做到監聽home鍵(僅當發起新的Intent)。
代碼如下:
Manifest.xml
Activity 中
注意: 當按Home鍵退出,再長按Home鍵進入,此時onNewIntent不被訪問,因爲再次進入的時候沒有被髮起Intent 。