<activity-alias
android:name="com.fungo.xmsport.icon_tag"
android:enabled="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:targetActivity=".splash.SplashActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity-alias>
<activity-alias
android:name="com.fungo.xmsport.icon_tag_1"
android:enabled="false"
android:icon="@mipmap/ic_launcher_1"
android:label="@string/app_name"
android:targetActivity=".splash.SplashActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity-alias>
<activity-alias
android:name="com.fungo.xmsport.icon_tag_2"
android:enabled="false"
android:icon="@mipmap/icon_noble_lv1"
android:label="@string/app_name"
android:targetActivity=".splash.SplashActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity-alias>
<activity-alias
android:name="com.fungo.xmsport.icon_tag_3"
android:enabled="false"
android:icon="@mipmap/ic_chat_empty"
android:label="@string/app_name"
android:targetActivity=".splash.SplashActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity-alias>
if (DataPreferencesHelper.getPref("isWelcome", false)) {
//非第一次啟動(dòng),一鍵登錄預(yù)約取號(hào)
when {
TimeUtils.getToday() == "2020-10-20" -> {
openComponent( "com.fungo.xmsport.icon_tag")
disableComponent("com.fungo.xmsport.icon_tag_1")
disableComponent("com.fungo.xmsport.icon_tag_2")
disableComponent("com.fungo.xmsport.icon_tag_3")
}
TimeUtils.getToday() == "2020-10-21" -> {
disableComponent( "com.fungo.xmsport.icon_tag")
openComponent("com.fungo.xmsport.icon_tag_1")
disableComponent("com.fungo.xmsport.icon_tag_2")
disableComponent("com.fungo.xmsport.icon_tag_3")
}
TimeUtils.getToday() == "2020-10-22" -> {
disableComponent( "com.fungo.xmsport.icon_tag")
disableComponent("com.fungo.xmsport.icon_tag_1")
openComponent("com.fungo.xmsport.icon_tag_2")
disableComponent("com.fungo.xmsport.icon_tag_3")
}
else -> {
disableComponent( "com.fungo.xmsport.icon_tag")
disableComponent("com.fungo.xmsport.icon_tag_1")
disableComponent("com.fungo.xmsport.icon_tag_2")
openComponent("com.fungo.xmsport.icon_tag_3")
}
}
}
/**
* 打開(kāi)-啟用
*/
private fun openComponent(icon_tag: String) {
LogUtils.d("liuhong : switchIcon icon_tag = $icon_tag")
try {
val pm = packageManager
val actComponentName = ComponentName(
baseContext,
icon_tag)
//活動(dòng)圖標(biāo)新?tīng)顟B(tài)
val actNewState = PackageManager.COMPONENT_ENABLED_STATE_ENABLED
//新?tīng)顟B(tài)跟當(dāng)前狀態(tài)不一樣才執(zhí)行
if (pm.getComponentEnabledSetting(actComponentName) != actNewState) {
pm.setComponentEnabledSetting(
actComponentName,
actNewState,
PackageManager.DONT_KILL_APP)
}
} catch (e: Exception) {
e.printStackTrace()
}
}
/**
* 關(guān)閉-禁用
*/
private fun disableComponent(icon_tag: String) {
LogUtils.d("liuhong : switchIcon2 icon_tag = $icon_tag")
try {
val pm = packageManager
val normalComponentName = ComponentName(
baseContext,
icon_tag)
//正常圖標(biāo)新?tīng)顟B(tài),此處使用用來(lái)修改清單文件中activity-alias下的android:enable的值
val normalNewState = PackageManager.COMPONENT_ENABLED_STATE_DISABLED
//新?tīng)顟B(tài)跟當(dāng)前狀態(tài)不一樣才執(zhí)行
if (pm.getComponentEnabledSetting(normalComponentName) != normalNewState) {
//PackageManager.DONT_KILL_APP表示執(zhí)行此方法時(shí)不殺死當(dāng)前的APP進(jìn)程
pm.setComponentEnabledSetting(
normalComponentName,
normalNewState,
PackageManager.DONT_KILL_APP)
}
} catch (e: Exception) {
e.printStackTrace()
}
}