Android动态修改应用图标与名称的方法实例-创新互联

遇到的坑

创新互联建站网站建设提供从项目策划、软件开发,软件安全维护、网站优化(SEO)、网站分析、效果评估等整套的建站服务,主营业务为成都做网站、网站制作、成都外贸网站建设app软件开发公司以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。创新互联建站深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

这里我把做这个功能中遇到的一些问题写在前面,是为了大家能先了解有什么问题存在,遇到这些问题的时候就不慌了,这里我把应用图标和名称先统一使用icon代替进行说明。


1、动态替换icon,只能替换内置的icon,无法从服务器端获取来更新icon;


2、动态替换icon以后,应用内更新的时候必须要切换到原始icon),否则可能导致更新安装失败(AS上表现为adb运行会失败),或者升级后应用图标出现多个甚至应用图标都不显示的情况(这些问题都可以通过下面我推荐的开发规则解决掉,所以这是一个坑点,不是肯定会发生的问题,只不过大多数人会遇到。);


3、Android系统动态替换app icon会有延迟,在不同的手机系统上刷新icon的时间不一样,大概在10秒左右,在这个时间内点击icon会提示应用未安装(提示可能会有差别,目前我的小米就不会提示任何信息,点了没有反应);


4、更换icon的代码运行后一会应用就闪退了,或者导致显示中的Dialog和PopupWindow报错崩溃(这个问题和第二个问题有很大的相关性,按我下面给出的规则实行的话是可以解决的。


多入口配置


多入口配置,字面意思就是应用程序的多个入口配置,在AndroidManifest.xml中有一个叫activity-alias的标签,这个标签从字面上看就能理解是activity别名的意思,这里我给出一个示例作下相应的说明。


activity-alias例子说明:


  <activity-alias
   android:name="NewActivity1" // 注册这个组件的名字,不需要生成文件
   android:enabled="false"  // 是否显示这个启动项
   android:label="Alias1"  // 名称,也就是对应这个启动项显示在桌面上的app名称
   android:icon="@mipmap/ic_launcher_round" //图标,也就是对应这个启动项显示在桌面上的app图标 
   android:targetActivity=".MainActivity"  //对应的原来的Activity组件,这里路径要跟注册的Activity对应。
   >
   <intent-filter> // LAUNCHER 启动入口
    <action android:name="android.intent.action.MAIN" />

    <category android:name="android.intent.category.LAUNCHER" />
   </intent-filter>
  </activity-alias>

当前标题:Android动态修改应用图标与名称的方法实例-创新互联
本文路径:https://www.cdcxhl.com/article30/dpsiso.html

成都网站建设公司_创新互联,为您提供静态网站移动网站建设品牌网站设计网站导航品牌网站制作品牌网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

小程序开发