android动态修改应用图标和应用名称
来源:互联网 发布:小企业的会计软件 编辑:程序博客网 时间:2024/06/07 01:13
参考链接:http://www.jianshu.com/p/1d83f9a98ffd
今天无意间看到了饿了么的图标突然被加上了517的字样,很好奇是怎么实现的,就百度了一下实现方式,特此记录一下。
在AndroidManifest.xml
文件的application
节点中添加如下代码:
<activity-alias android:name=".activity.Bazaar" //替换之前Activity的名称 android:enabled="false" android:icon="@mipmap/ic_launcher" android:label="应用名称" android:targetActivity=".activity.SplashActivity"> //填写应用程序入口Activity <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity-alias>
<action android:name="android.intent.action.MAIN" />
决定应用程序最先启动的Activity 。<category android:name="android.intent.category.LAUNCHER" />
决定应用程序是否显示在程序列表里。
在程序第一个执行的activity中添加:
PackageManager mP;ComponentName def;ComponentName mBazaar;mP = getApplicationContext().getPackageManager();def = new ComponentName(getBaseContext(),"com.fangbei.umarket.activity.SplashActivity");mBazaar=new ComponentName(getBaseContext(),"com.fangbei.umarket.activity.Bazaar");private void enabledComponent(ComponentName name) { mP.setComponentEnabledSetting(name, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);}private void disableComponent(ComponentName name) { mP.setComponentEnabledSetting(name, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);}
COMPONENT_ENABLED_STATE_DISABLED
通过查看源代码注释给的解释是禁用程序列表中的某个应用图标COMPONENT_ENABLED_STATE_ENABLED
则相反
执行此方法改变图标private void setIconSc() { disableComponent(def); //禁用之前的图标 enabledComponent(mBazaar);}private void setIconWm() { disableComponent(mBazaar); enabledComponent(def);}//显示快捷图标
假如双十一快到了就可以添加一个网络请求,调用上面例子setIconWm()
方法的判断是否需要修改应用图标和名称!
实现原理
简单的来说就是创建一个APP的快捷方式,快捷方式必须指向程序入口的Activity,此时这个APP就在桌面有两个快捷方式,然后在Activity里面通过PackageManager 类把之前的快捷方式禁用隐藏起来,只显示新的快捷方式就实现想要的功能啦,就是这么简单!
阅读全文
0 0
- android动态修改应用图标和应用名称
- Android利用activity-alias动态修改应用图标和名称
- 如何修改Android应用的图标,名称
- AndroidManifest.xml之动态修改应用的图标和应用名称
- Android读取应用的名称和图标
- android studio开发<七> 修改应用图标 应用ID 应用名 输出名称
- 动态修改桌面应用图标
- Android 应用动态更改图标和名字
- Android 主界面应用图标的动态修改
- (一)—— 修改应用名称 应用图标
- Android 修改应用图标icon
- 获取android 应用程序包名、图标、应用名称
- Android Launcher3修改应用图标,隐藏应用图标
- 【Android】使用Gradle实现分渠道打包,指定应用名称,应用图标,应用标识和环境切换
- 【android】修改android默认应用图标
- ios 修改应用名称
- ios 修改应用名称
- ios修改应用名称
- 分形的数学基础
- adb命令模拟按键输入keycode
- ora-01031 权限不足
- android不同分辨率屏幕横向固定适配
- 错误信息:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
- android动态修改应用图标和应用名称
- 今年多少岁
- JAVA学习47_在Eclipse下,出现“找不到或无法加载主类 ”的问题的解决方式
- Maven学习详解(10)——Maven常用命令大全与pom文件讲解
- 普通APP如何使得系统休眠
- 深度神经网络在图像识别应用中的演化【笔记】
- 最小生成树Prim算法
- Spring3中js/css/jpg/gif等静态资源无法找到(No mapping found for HTTP request with URI)问题解决
- 僵尸进程和孤儿进程