Android隐藏应用桌面图标/动态修改桌面图标
生活随笔
收集整理的這篇文章主要介紹了
Android隐藏应用桌面图标/动态修改桌面图标
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Android隱藏應(yīng)用桌面圖標(biāo)/動(dòng)態(tài)修改桌面圖標(biāo)
應(yīng)用啟動(dòng)后點(diǎn)擊隱藏
注意:在Android11只要在mainifest有權(quán)限申請(qǐng),就不會(huì)隱藏
private void hide() {PackageManager packageManager = getPackageManager();packageManager.setComponentEnabledSetting(getComponentName(),PackageManager.COMPONENT_ENABLED_STATE_DISABLED,PackageManager.DONT_KILL_APP);}此方式可隱藏桌面圖標(biāo),即Luncher里看不到應(yīng)用icon和label,并且后臺(tái)也看不到,只能手動(dòng)停止 或卸載,手機(jī)管家可清理,啟動(dòng)后進(jìn)程正常運(yùn)行,后臺(tái)日志正常輸出
安裝后直接隱藏
manifest中配置
<uses-featureandroid:name="android.software.leanback"android:required="true" />啟動(dòng)頁的下配置
<category android:name="android.intent.category.LEANBACK_LAUNCHER"/>完整配置如下示例:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.luncherdemo"><uses-featureandroid:name="android.software.leanback"android:required="true" /><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:roundIcon="@mipmap/ic_launcher_round"android:supportsRtl="true"android:theme="@style/Theme.LuncherDemo"><activity android:name=".MainActivity"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LEANBACK_LAUNCHER"/> <!-- <category android:name="android.intent.category.LAUNCHER" />--></intent-filter></activity></application></manifest>此種配置,應(yīng)用安裝后能看到頁面,后臺(tái)也可見,桌面無圖標(biāo),但是殺死進(jìn)程后無法再次手動(dòng)啟動(dòng)app
動(dòng)態(tài)修改應(yīng)用圖標(biāo) icon 和 lable
1、清單文件增加權(quán)限
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>2、下增加一個(gè)
<activity-aliasandroid:icon="@mipmap/alias_icon"//新的iconandroid:label="@string/app_name2"//新的labelandroid:name="changeAfterActivity" //和MainAcitivity同路徑android:targetActivity=".MainActivity" //targetActivity 和啟動(dòng)頁是同一個(gè)activityandroid:enabled="false"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity-alias>完整代碼:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.luncherdemo"> <!-- <uses-feature--> <!-- android:name="android.software.leanback"--> <!-- android:required="true" />--><uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:roundIcon="@mipmap/ic_launcher_round"android:supportsRtl="true"android:theme="@style/Theme.LuncherDemo"><activity android:name=".MainActivity"><intent-filter><action android:name="android.intent.action.MAIN" /><!-- <category android:name="android.intent.category.LEANBACK_LAUNCHER"/>--><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity><activity-aliasandroid:icon="@drawable/ic_home_light"android:label="@string/app_name2"android:name="changeAfter"android:targetActivity=".MainActivity"android:enabled="false"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity-alias></application></manifest> //3調(diào)用private void chaneIcon() {PackageManager packageManager = getPackageManager();//顯示別名的設(shè)置packageManager.setComponentEnabledSetting(new ComponentName(this, "com.example.luncherdemo.changeAfter"),PackageManager.COMPONENT_ENABLED_STATE_ENABLED ,PackageManager.DONT_KILL_APP);//disable 掉原來的設(shè)置packageManager.setComponentEnabledSetting(new ComponentName(this, "com.example.luncherdemo.MainActivity"),PackageManager.COMPONENT_ENABLED_STATE_DISABLED ,PackageManager.DONT_KILL_APP);}這樣就能動(dòng)態(tài)修改 lable和icon了
總結(jié)
以上是生活随笔為你收集整理的Android隐藏应用桌面图标/动态修改桌面图标的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java使用validator进行校验
- 下一篇: Android中设置输入法为数字输入