其實我找了一下發現4.2版之後,沒有特別鎖Home鍵的方法,如果是虛擬鍵可以藉由蓋View搶觸控事件的方式去實作,但如果是實體鍵基本上防不住。
我這邊分享另一個想法就是,讓你的App宣告為桌面,這樣如果使用者把你設為預設桌面App,之後使用者一按Home鍵就會開啟你的AppXDDD
要達到這個效果非常簡單只要在你的AndroidManifest Activity 裡面宣告就好。
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
兩行就好
下面是範例:
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<!-- 宣告為桌面App -->
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
<!-- -->
</intent-filter>
</activity>
</application>
安裝完App後你的App應該會出現在設定中選擇主畫面裡面。
選擇自己的App後就取得Home Key的主導啦。
文章標籤
全站熱搜

hi 我手機是2015 samsung G a800iz 問題出在我的實體home鍵經常自己觸發 做其他事就自動跳回首頁,苦不堪言阿 你之前文章中提過app搶先主導權得能不能再發一篇 謝謝了
哈囉 如果是你Android 5.0之後有一種簡單的鎖定方法(可以被解開的,除非root) 你在OnCreate 之後加一行。 startLockTask(); 有關於其他鎖定的部分,我找到一篇簡中的說明,你可以參考看看:https://github.com/hehonghui/android-tech-frontier/blob/master/issue-16/Android%E4%B8%80%E4%BD%93%E6%9C%BA%E6%A8%A1%E5%BC%8F%EF%BC%9A%E8%A7%84%E5%88%99%E9%99%90%E5%88%B6.md