目的:
为了加强用户体验,增强品牌效应,使我们的产品有自己独特的风格,主题的定制将会是必然趋势……
然而Android原生系统是不支持主题定制的,所以如何来定制主题,如何做得更好,需要大家集思广益……
策略:
将介绍两种定制主题的机制:
1根据Android Configuration Qualifier机制,加入我们自己的JRDTheme定制。
2用主题包的形式,根据用户选择不同的主题,而加载不同主题包中的资源。
基本原理:
首先介绍方式一:
Android Configuration Qualifier
Android 系统为一个项目提供了多套可供选择的资源,通过命名特殊的资源文件夹来区别它们。系统在运行的时候,根据设备的当前配置为每个应用加载合适的资源。
这些不同的资源都是放在每个应用的res/目录下面的,特殊的命名方式是-:
: 资源文件夹的名字,与默认资源文件夹保持一致
: 根据设备不同配置,需要使用的资源文件夹名字
Android系统根据优先级的先后顺序已经支持多种Configuration Qualifier,如图1:
如何添加 Jrd Theme Resources
JrdTheme 的核心策略是当我们设定了不同的主题后,会自动的替换我们想要替换的资源(Framework&App)。具体步骤如下:
1 工程师从UE哪里获得我们想要改变的主题资源,
2把这些资源放到对应模块的res/目录下,以Contacts模块为例,假如我们想要定制drawable、color、layout。
原来在Contacts模块中默认的资源目录如下:
res/
layout/
mainxml
infoxml
drawable/
iconpng
values/
colorsxml
定制后的资源目录如下:
res/
layout/
mainxml
infoxml
layout-jrdthemexxx/
mainxml
infoxml
drawable/
iconpng
drawable-jrdthemexxx/
iconpng
values/
colorsxml
values-jrdthemexxx/
colorsxml
Notes: jrdthemexxx 是其中一个 主题的 Qualifier,如果有多个主题,那么将会有多个jrdthemexxx存在。
3与原来一样编译这些模块,push到手机中即可。
这只是一个guide ,具体实现还要细化…… 目前在diablo、beetle上面已经用这种方式实现了……我在smartiii上尝试过,机制没问题,但是改动的范围太大了,比较麻烦。
方式二:
核心思想:系统中有多套主题资源包,并且应用可以用相同的资源ID来访问不同资源包中对应的资源。 Android原生系统的资源访问流程 对应用来说,资源访问主要有下面三种方
式:
第一、比较普遍的方式是使用xml定义,并且通过AAPT工具生成一个R文件,列出资源的索引来让Android系统自己去遍历整个资源树的方式来访问。
第二、通过Resources接口来访问,使用Resources类的getDrawable、getString等接口来获取资源。
第三、通过AssetManager类的接口去访问,使用这个类的open方法来返回一个InputStream对象得到资源。
其实这三个访问方式只是Android资源访问中整个流程中在不同层次对外提供的三个接口,到底层的实现都是殊途同归的。
因此我们实际上需要修改的部分主干是在访问资源具体路径前,按照当前系统主题设置访问不同资源APK下的文件
即是把原生Android中资源ID和资源文件路径之间一对一的关系改为一对多的关系。
例子如下:如果原有资源ID和资源文件路径关系为:
Rdrawableimage01 = 0x7F020001
通过系统的资源查找之后找到文件路径为 /system/app/frameworks-resapk下的res/drawable_hdpi/iconpng
在AssetManager native中去读取资源并上传。
那么我们需要做的是在传入路径去读取资源时把文件路径替换为/data/app/SystemTheme01apk下的res/drawable_hdpi/iconpng
安卓手机的主题,电脑下好了,传到手机内存卡上安装,在主题设置里选择就可以用了,或者手机连电脑用豌豆荚直接安装到内存卡(手机和电脑上都要有豌豆荚)。
自己研究一下具体的设置,常上手机论坛看帖、常用百度搜索,很多问题都可以自己解决哦!!
(^__^) 嘻嘻……
采纳我做最佳,你会有好运气哦!
手机主题如果是手机浏览器下载的,点击“菜单”,再打开“下载”页面就看到下载的主题文件,点击即可安装,也可以从文件管理里,找到下载的“主题文件”,点击安装。安装完毕后,进入功能表,设置-主题模式,就可以看到你下载的主题了,选择可以了。
1、用电脑下载主题方法。
首先下载你喜欢的主题。
2、将手机连上电脑。
将主题下载到你的电脑上,然后用数据线(或读卡器)将你的手机连上电脑,打开‘我的电脑’,能看到新出现一个‘移动硬盘符’。
3、拷贝主题到手机存储卡上。
打开移动盘符就是你的手机存储卡中的内容了,这么多文件夹,我们要把主题存放在哪里
任何一个文件夹都可以,只要自己记得住的就可,也可以自己单独建立一个专门放主题的文件夹。
4、在手机中找到这个主题并安装。
这个主题在“文件管理”中可以找到。“文件管理”不同型号的手机会在不同的地方,应该很容易就能找到的,文件管理就在“工具”里面:进入“文件管理”后将看到的界面是手机自身的存储内容,找到你下载的文件夹直接点主题打开就可以安装了。
相当的简单
具体方法;下载安装一个“超级工具箱”软件装在你手机上,然后你用电脑下载好的主题文件放到SD卡上,打开超级工具箱---更换主题---直接找到SD卡上的主题文件就可以更换了
欢迎分享,转载请注明来源:品搜搜测评网