公司做一個定製的APP,就是開機就打開app,按home還是自己app。我找了很多都是修改framework,這樣很麻煩,就相當編源碼了(我覺得是這樣)。正題:
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:sharedUserId="android.uid.system">
<activity android:name=".activity.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.HOME.SEADEE"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
</application>
我標記的地方 就是關鍵地方,這樣寫就會出現 下圖
開機的時候會這樣顯示,還有app一直點返回到退出程序會顯示這個。
首先解決 點擊返回顯示這個東西,就是攔截返回按鈕。 我這裏在MainActivity中加入此方法
@Override
public void onBackPressed() {
// super.onBackPressed();
}
現在 基本就是完成了,還有一個主要的問題就是,每次要人選哪個是桌面很麻煩,所以思路就來了。Android本身的Launcher.apk
就是桌面,所以要麼我們替換系統的Launcher.apk 要麼就改源碼,把跳轉的鏈接 跳轉到我們自己的apk,我這裏實現的是前者。
cmd中運行:
adb push C:\Users\BAO\Desktop\HwLauncher6.apk /system/app 這樣就OK了 但是出現一個問題,
報錯:adb remount 失敗:remount failed: Operation not permitted
發現是權限的問題。 通過以下方式獲取權限
方法:
1:adb devices
會出現就說明 你沒有鏈接上,那麼你就要看看是什麼原因。我這裏是360手機助手。
就是這兩個貨,
我很多時候AndroidStudio鏈接不上手機也是這個東西,把它結束進程,
它可能不會立刻關閉,你要等幾秒,方正就是一定要關閉它們。
再次輸入adb devices
就說明你成功了。
2:adb shell
su
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
chmod 777 /system
cd system
chmod 777 app 注意網上很多都是這樣,這個地方寫錯了導致不成功 是chmod 不是chomd
cd app
ls(這一步可以操作可以不操作,主要看你係統的launcher叫什麼名字,輸入ls 就出現所有apk 找到你的launcher 我這裏是HwLauncher6.apk)
chmod 777 HwLauncher6.apk
exit
這樣就獲取操作
/system/app/HwLauncher6.apk 記住是HwLauncher6.apk的讀取修改操作 只有他的。
再次在cmd中運行
adb push C:\Users\BAO\Desktop\HwLauncher6.apk /system/app
出現 ok 成功!
————————————————
版權聲明:本文爲CSDN博主「遇見昨天」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/u012254541/article/details/72637520