安卓首页资讯频道安卓日报手机频道图库频道VR频道游戏频道安卓论坛|百度手机助手
切换到宽版
新浪微博
腾讯微博
 

只需一步,快速开始

QQ登录

查看: 720240|回复: 4172

[U8800/U8800+] 【霖枫整理,25】史上最强修改/解析APK教程,全面装逼你的手机(极致DIY,已完成)   [复制链接]

Rank: 10Rank: 10Rank: 10

积分
17567
金币
24563
注册时间
2011-2-22

Hiapk高达 Hiapk土豪

发表于 2011-9-9 21:19:17 |显示全部楼层
本帖最后由 霁霖枫 于 2011-9-16 18:00 编辑

还记得在玩S40和S60改软和用PY写程序的日子。
蛮充实,其实安卓也有改软的。这个帖子覆盖大多数改软技术。
有兴趣的机油学习下,可以完美DIY你的手机!
此贴由HerSe Light  和霁霖枫共同完成,
请各位评分,不喜欢回复的就别看....(花我几个通宵
还是那句话,Hiapk作为各位学习进步的好地方,所以当大家学到什么或者发现了什么请各位多多转载。
乐于共享的人是最幸福的!


此贴完成时间:2011/9/9-----2011/10/1.
内容:
1.概述APK
2.修改软件名称。
3.修改软件图片
4.软件共存版制作。
5.微博尾巴修改
6.PAD版QQ尾巴
7.修改软件背景(以QQ皮肤为例)
8.软件汉化
9.软件去广告
10.用PY写程序.
--------------------------------------------------------
--------------------------------------------------------

第一节,APK简单认识:
APK是AndroidPackage的缩写,
即Android安装包(apk)。
APK是类似Symbian Sis或Sisx的文件格式。
通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。
apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。
APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是Dalvik VM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。



Android在运行一个程序时首先需要UnZip,然后类似Symbian那样直接,和Windows Mobile中的PE文件有区别。
在Android平台中dalvik vm的执行文件被打包为apk格式,最终运行时加载器会解压然后获取编译后的androidmanifest.xml文件中的permission分支相关的安全访问,但仍然存在很多安全限制,如果你将apk文件传到/system/app文件夹下会发现执行是不受限制的。
安装的文件可能不是这个文件夹,而在android rom中系统的apk文件默认会放入这个文件夹,它们拥有着root权限。


结构:
将你下载下来的APK重命名为Zip压缩包格式:
1. META-INF\ (注:类似于JAVA手机的jar,即签名。) 1.png

一般修改软件时,需要删除,CERT.RSA文件和CERT.SF文件删掉
(因为需要签名,不删掉你签名会失败)
1.png

2. res\ (注:存放资源文件的目录) 2.png

一般存放系统图片等一切你打开软件时看到的东西
1.png
;  
3. AndroidManifest.xml (注:程序全局配置文件) 3.png
;  
4. classes.dex (注:Dalvik字节码) 5.png
;   
5. resources.arsc (注:编译后的二进制资源文件,存放图片的地方)
4.png

而安卓的软件的修改大多数为反编译和图片的替换。

--------------------------------------------------------
--------------------------------------------------------



第二节:安卓软件名称的修改。
1.工具:
APKtools(反编译及签名工具)
游客,如果您要查看本帖隐藏内容请回复

1.png

2.png

压缩软件(winrar或者好压)

Framework(2.0版本以上):
http://www.crsky.com/soft/4818.html
ArscEditor和AndroidResEdit


游客,如果您要查看本帖隐藏内容请回复

Java环境(注意左面也有离线下载的):
http://www.java.com/inc/BrowserRedirect1.jsp?locale=zh_CN&host=www.java.com
2.教程:  
安装Framework2.0和Java


1. 右键要修改的Apk软件用压缩软件打开


3.png

2.删除原签名
5.png

4.png

2. 把目录下的resources.arsc拖出来,用ArscEditor打开,点string选项,找到app_name,修改为自己喜欢的名字
6.png

3. 保存

4. 把新保存的resources.arsc替换原来的

5. 保存软件并重新签名




--------------------------------------------------------
--------------------------------------------------------

第三节:安卓系统软件图标修改
1.工具:
JAVA环境
上个附件中的签名工具
PS(自己下吧)

教程:
右键要修改的Apk软件用压缩软件打开


安卓软件图片在rec的drawable和drawable-hdpi(有就进没就算)文件夹中,
名称为到icon.png
1.png

3.png

4.png


直接从好压里面拖出来,用Ps编辑,修改完毕拖回原来位置。
切忌:软件图标分辨率为48X48!

修改签名。

--------------------------------------------------------
--------------------------------------------------------

第四节:软件实现共存:

1.工具:
APKtoos(第一个附件)
Notepad++(这个软件毒多,自己百度吧)



2.教程:

以QQ为例:
1.用反编译工具(APKTOOLS) ,在Apk反编辑处选择QQ

2. 保存文件目录选择桌面

5.png

3. 按下反编译Apk按钮就可看到桌面有个新文件夹


4.将你下载的Notepad++打开

5. 打开搜索(Ctrl+F是快捷键),选中文件搜索,选上“包括子文件夹”“包括隐藏目录”,文件类型填“*.*”,目录选择新生成的目录

第一次替换
查找目标为com.tencent.QQ
替换为com.tencent.QQ2.0或者com.tencent.XX(任意)

点在文章替换
第二次替换,其他设置不变
查找目标为com/tencent/qq
替换为com/tencent/QQ2.0
点在文章中替换
第三次替换(有些软件不用,在先全部查找“task.”查看有没有类似名字再进行替换)
目标为android.task.qq
替换为android.task.QQ2.0
点在文章中替换

6.打开APKtools,右边选择桌面那个软件目录,生成Apk目录选择桌面

7.按下编译Apk,签名。


假如是UC呐:
(以UC8.0为例)
第一次替换
查找目标为com.uc.browser
替换为com.uc2.0.browser
点在文章替换
第二次替换,其他设置不变
查找目标为com/uc/browser
替换为com/uc2.0/browser
点在文章中替换


最后方法同样!


--------------------------------------------------------
--------------------------------------------------------


第五节:安卓微博尾巴修改:

1.工具:
JAVA环境
签名工具apktools
notepad++
下载反编译工具TOOL。
游客,如果您要查看本帖隐藏内容请回复


1.png


2.教程:

1.下载微博客户端,重命名为XX.zip
2.将反编译工具解压至目录:D\:tool。
3.删除签名。
4.打开微博,将classes.dex提取至目录D\:tools.
2.png


3.png


5.运行cmd,键入命令:cd /d "D:tool"进入tool文件夹
6.解包classes.dex文件到D:\tool\weibo文件夹里,

命令为:java -jar baksmali.jar -o D:\tool\weibo classes.dex,然后在D:/tool目录里出现weibo文件夹

7.找到D:\tool\weibo\com\sina\weibo里的Constants.smali与RPCHelper.smali两个文件,可以用notepad打开,然后进行修改,保存。

从新浪微博2.5.0beta公测版开始后

Constants.smail文件在tool\weibo\com\sina\weibo\utils
RPCHelper.smail文件在tool\weibo\com\sina\weibo\net


以IPHONE为例:搜索key"android" 替换为 "iphone" (搜索和修改带引号)

搜索验证码"5l0WXnhiY4pJ794KIJ7Rw5F45VXg9sjo"替换为"5Jao51NF1i5PDC91hhI3ID86ucoDtn4C"(搜索和修改带引号)



4.png



8.修改完成,重新打包为_classes.dex文件,

命令为:java -jar smali.jar D:\tool\weibo -o D:\tool\_classes.dex,现在各位可在D:/tool目录里看到_classes.dex

9.用winrar删除掉weibo.zip里的META-INF文件夹,并将上一步生成的_classes.dex重命名为classes.dex直接替换同名文件


10.用APKtools签名。


--------------------------------------------------------
--------------------------------------------------------



第六节:PAD版QQ尾巴修改:
1.工具:
JAVA环境
APKtools
ArscEditor
AndroidResEdit

全部工具前面已提供。
2.教程:
1.下载PAD版QQ,重命名为XX.zip
2.删除原签名,用压缩软件提取里面的resources文件

5.png



3.用ArscEditor打开resources文件,点string选项,找到要修改的地方
6.png

4.修改好后点右下角的保存当前值,最后点左上角的文件——保存

7.png

5.把修改好的resources文件放到apk程序中替换原来的resources文件


6.用APKtools签名。

--------------------------------------------------------
--------------------------------------------------------

其实还有一种是纯手机端修改,但是这个软件只能修改PAD1.4.1版。
以下是工具,打开后小白也会的。

游客,如果您要查看本帖隐藏内容请回复

--------------------------------------------------------
--------------------------------------------------------


第七节:软件背景修改(QQ皮肤为例)
其实对于不同软件修改皮肤/修改背景是有所区别的。
UC有自己原创的.UCT系列皮肤(UC皮肤主要涉及工具和素材,普通人光PS素材估计需要半个月)
而输入法皮肤修改/制作则比较简单,这个大家可以自己百度!
这里以QQ皮肤为例讲QQ皮肤修改:
强调个东西:此修改仅对QQ2011BATA1和之前版本有效,最新版的直接不用试。
大多数安卓软件背景图位于Res
2.png

1.png

这里面有无数东西,你可以实现N多显示效果....
而QQ消息铃声位于:
3.png


RES中有许多9.PNG,(很重要,试试你就懂了...)
这里给个视频:

详细教程请看:
【霖枫整理,22】(教程篇)通宵一夜,美化必学!9.png类图片的制作(附视频)

工具:
1.JAVA
2.APKtools
教程:
1.将你的qq的apk软件重命名为XX.apk.zip,然后对其解压。删除签名.

2.打开文件包,定位到res--drawable,找到名为default-bg.jpg的图片(这就是竖屏背景图片),drawable-land里面的default_bg.jpg是横屏用的。
8.png

3.名为splash.9.png的图片是QQ启动图片。

7.png

6.png

4.将你要替换的图片命名为以上名称,直接替换即可!

5.png

5.签名。
4.png


--------------------------------------------------------
--------------------------------------------------------

QQ2010版纯手机端制作请参考:

【霖枫整理,11】(教程篇)QQ深度美化之qq皮肤的修改。(纯手机端)














79

查看全部评分

使用道具 举报

荣誉版主

Hiapk-海斯

积分
19282
金币
23618
注册时间
2011-5-26

Hiapk总版主 Hiapk荣誉版主 劳模勋章 特殊贡献勋章 Hiapk基友勋章 Hiapk帅哥

发表于 2011-9-10 19:49:28 |显示全部楼层
本帖最后由 HerSe Light 于 2011-9-17 13:04 编辑

第八节,APK汉化:
APK汉化分为用汉化浪子汉化和APKtools反编译汉化。
(1)汉化浪子汉化:
工具:
1.Java
2.解压缩软件:WinRAR
3.汉化工具:AndroidResEdit(需 要.NET Framework 2.0支持)
4.图片汉化软件:Photoshop
5.APKtools签名  

(除了PS,全部已提供)                                                                                    
教程:
以天气插件为例:

汉化News and Weather是一款从 Android 2.1系统中提取的天气与新闻资讯软件,目前只有英文版本,本文将以此为例对这款软件进行汉化。
A.解压在News and Weather软件的安装文件GenieWidget.apk上点击右键,在快捷菜单的打开方式中选择“WinRAR”打开APK文件,将其中的 resources.arsc文件解压出来。
1.png

B.汉化resources.arsc:
1.文字汉化运行AndroidResEdit软件, 打开之前解压出来的resources.arsc文件。
软件会在原始资源栏中列出所有英文词条,在某一词条上双击,在弹出的对话框中输入翻译后的内容,确定后即可完成该词条的汉化(E文不好的朋友可以使用Google在线翻译或者借助词典软件进行翻译)。
2.png

2.依次将所有词条翻译汉化后,点击文件菜单中的保存文件即可。
(一般情况下我们只需要翻译以大写字母开头的词条,也有小部分是以小写字母开头的,这些需要我们自己来判断。)
带下划线的软件参数、目录名称、文件名称不需要修改,像%s%、d%这类格式化输出的参数也不用做修改,照抄过来就可以了,输入时注意是半角小写字 符,否则会出错。
3.如果需要翻译的词条过多,逐条翻译比较麻烦,AndroidResEdit软件还提供了字典导入/导出功能。
点击文件→导 出字典→大写字母开头词条,将所有大写字母开头的词条导出为.txt文本文件。
然后打开导出的TXT文本文件,在自动生成的“|”竖线后输入汉化内容,全部完成后保存。
最后在AndroidResEdit软件中选择导入字典功能,导入翻译好的TXT文件就可以了。
3.png

4.png

4.汉化某些软件中会有包含英文的按 钮图片,我们只需找到对应图片,利用Photoshop等绘图软件,制作成中文按钮图片就OK了。
一般来说,软件的所有图片素 材都在APK文件内的\res\drawable目录中,图片格式为PNG。
除了汉化图片外,我们还可以替换该目录中的图标素材,达到美化软件的目的
[img]http://bbs.hiapk.com/attachment.php?aid=1010946&fid=226&noupdate=yes[/img]
[img]http://bbs.hiapk.com/attachment.php?aid=1010955&fid=226&noupdate=yes[/img]
C.替换汉化文件及图片 resources.arsc文件和图片汉 化完成之后,再次用WinRAR打开原APK安装文件,将 resources.arsc文件拖入WinRAR工作窗口,替换原文件。
用同样的方法,将处理好的图片,拖入\res\drawable目录中,替换原图片。
D.签名APK文件汉化完成之后,需要重新签名才可以安装使用。
在签名之前,先删除原来的签名文件,用WinRAR打开APK文件,将META-INF文件夹中除 MANIFEST.MF以外的两个文件删除,然后关闭WinRAR软件。
打开AndroidResEdit软件,选择签名菜单中的“签名APK文件”功能,指定要签名的APK文件的位置,点击立 即签名按钮,再指定新签名的APK文件保存位置,提示签名完成就大功告成了。
接下来就可以在手机上安装测试了,在使用过程中发现未汉化或者汉化错误的问题,可以按上述步骤进行修正。
--------------------------------------------------------

注意:1.有路径的不需要汉化:
1.png


2.类似单词间没有空格、单词间有_等没有实际语义的不用汉化:
2.png

--------------------------------------------------------
--------------------------------------------------------
(2)APKtools汉化(系转载):
汉化浪子汉化有口口现象,所以就需要学习另外一种汉化...
游客,如果您要查看本帖隐藏内容请回复

1、下面讲解下APKTool汉化的基本知识

解包/打包
- 先下载APKtool工具包(帖子附件有提供),解压,将APKTool v1.3.2文件夹放至D盘根目录。
- 将需要反编译的apk安装包放至APKTool v1.3.2文件夹内(以LauncherPro为例,文件名为LauncherPro.apk)
- 打开CMD命令行窗口(开始——运行,输入cmd,确认),如图:

3.png

- 在命令窗口中输入命令,定位至APKTool v1.3.2文件夹,如图:

4.png

输入命令反编译apk安装包,如图(红色方框部分为反编译命令):
5.png

命令说明:apktool d LauncherPro.apk launcherpro
- apktool d为反编译命令,其中d代表decode
- LauncherPro.apk为被反编译的apk安装包的文件名(可以自己定义)
- launcherpro为存放反编译后的文件的文件夹(可以自己定义)


2、下面开始讲解APKTool的汉化方法:

① 添加、汉化语言包
- 反编译完成后,进入launcherpro文件夹(在D:\APKTool v1.3.2路径下)
多数情况我们只需要修改launcherpro\res目录下的文件

- 在res文件夹中,我们可以看到有很多values-***的文件夹,这就是语言包。

- values是英文语言包,values-zh是中国地区语言包(包含港澳台及内地),values-zh-rCN是中文简体语言包(只包含内地),values-zh-rTW是中文繁体语言包(港澳台)。除此以外,其它地区的语言包都是精简的对象,可以不过多了解。

- 在values文件夹里,通常有arrays.xml、strings.xml等语言文件,要汉化这些文件,可以用Notepad++ Portable打开,如图:
6.png

- 我们只需要将>*****</string>间的*****内容改成中文就行了。

* 若要汉的软件没有中文语言包,可以自己在res目录下新建values-zh-rCN和values-zh-rTW文件夹,再把values文件夹内的原arrays.xml、strings.xml语言文件复制到values-zh-rCN和values-zh-rTW文件夹,然偶将语言文件内的单词、语句修改成中文并保存即可。

② 汉化解析
- 了解清楚语言包的问题后,大家也就会明白,APKTool的操作步骤其实也很简单,反编译——修改或添加语言包——重新打包而已,但费时的就是在修改、添加语言包这一块,比传统的汉化方法要更费时间,但所带来的好处是传统汉化方法无法相比的。

- 另外,除了res文件夹内有语言包需要汉化外,在res文件夹内的layout和xml文件夹内也会有文件需要汉化,同样是用Notepad++ Portable打开,这些文件里面都是代码语句,需要通过搜索功能找到需要汉化的单词来汉化,所以这里建议大家先把原版的软件装上去,再对照单词,边搜索,边汉化。

③ 重新编译打包
- 用Notepad++ Portable修改、添加好语言包后,就可以重新编译打包了。
- 方法如图下:
在刚才的命令窗口输入如下命令,如图:

7.png

命令说明:apktool b launcherpro
- apktool b为重新编译命令
- launcherpro为需要编译的目录(就是存放刚刚反编译后的文件的文件夹,名称可以自定义)

- 重新编译完成后,launcherpro文件夹内会新增一个dist文件夹,里面的LauncherPro.apk文件就是重新编译好的apk安装包,签名后即可安装。

-------------------------------------------------
-------------------------------------------------
第九节:安卓软件去广告

我用文档上传吧!
一个是电脑教程,一个是手机软件版的!
游客,如果您要查看本帖隐藏内容请回复


--------------------------------------------------------
--------------------------------------------------------

第十节:用PY写程序
其实玩过塞班S60的机油都知道PY平台,其实安卓也有。

这个在安卓论坛没有的...
Python,中文叫派森或大蟒蛇,它原本是电脑上的编程语言,现在安卓/塞班也已经支持Python开发。

和JAVA对比一下大家就明白了,JAVA也是从电脑编程语言演变到手机上的,而很多手机支持JAVA文件(jar格式)是因为手机上有JAVA平台(手机系统里本身就内置了),所以,如果我们在手机上安装了py平台,便也可以在手机上使用和开发py软件了!!
简介要“简”。欲了解更多可在百度百科或谷歌中搜索“py平台”及“python”等词条(基本上没必要)。
----------------------------
常见问题:
PY是干嘛的?

手机端PY可以写程序,想想你用的软件是自己做的,很爽吧!
附件中的PY无法打包!
学习PY其实并不难,主要是耐心!
下面已收集PY语言供大家学习!
----------------------------

下载地址:

游客,如果您要查看本帖隐藏内容请回复

(如果附件下载不好使,请百度搜索下载最新版)

--------------------------------------------------------
--------------------------------------------------------

1.PY环境配置:
安装"PYTHON FOR ANDROID" ,PythonForAndroid_r4.apk,
安装后启动PYTHON FOR ANDROID,点INSTALL来执行安装程序库,完成后可以退出了。
此过程会连接到谷歌服务器更新10M左右数据。
第2步:安装SL4A编译器,地址:http://u.115.com/file/aqby24ye# sl4a_r4.apk,安装完成。打开SL4A,这个就是安卓的手机端编译运行程序。
--------------------------------------------------------
--------------------------------------------------------


教程目录:

①【一起学编程】之1.01编写简单程序
②【一起学编程】之1.02中文显示
③【一起学编程】之1.03文本
④【一起学编程】之1.04函数与菜单输入
⑤【一起学编程】之1.05二级菜单
⑥【一起学编程】之1.06列表界面与if语句使用
⑦【一起学编程】之1.07左右键定义
⑧【一起学编程】之1.08界面切换
⑨【一起学编程】之1.09图片界面
⑩【一起学编程】之1.10字体效果
⑪【一起学编程】之1.11无限菜单
⑫【一起学编程】之1.12创建画布
【一起学编程】之1.11字体混合
【一起学编程】之1.13⑶插入图片
【一起学编程】之1.13⑷图片处
【一起学编程】之1.13⑸图片保存理
【一起学编程】之1.14折叠界面
【一起学编程】之1.15折叠界面㈡
【一起学编程】之1.15折叠界面㈡
【一起学编程】之1.16文本读写
【一起学编程】之1.17文本读写㈡
【一起学编程】之1.18文本查找
【一起学编程】之1.19文本替换
【一起学编程】之1.20打开外部程序
【一起学编程】之1.21打开网页
【一起学编程】之1.22循环语句
【一起学编程】之1.23播放声音
【一起学编程】之1.24随机选择
【一起学编程】之2.01判断语句
【一起学编程】之代码查错

下载地址:
游客,如果您要查看本帖隐藏内容请回复



--------------------------------------------------------
--------------------------------------------------------
--------------------------------------------------------
11.APK深度解析:

1.颜色:





资源应该位于resoursesresourses标签下

路径位于:resvaluescolors.xml,文件名随意

定义格式:color name=”cname”valuecolor

代码调用:Resourse.getValues.getColor()
实例:
xml version=1.0 encoding=utf-8
resources
    color name=white#FFFFFFcolor
    color name=black#000000color
resources

2、 字串

字串资源应该位于resoursesresourses标签下

路径位于:resvaluesstrings.xml

定义格式:string name=”sname”valuestring

代码调用: Resourse.getValues.getString()

实例:
xml version=1.0 encoding=utf-8
resources
    string name=helloHello World, ResrouseTestActivity!string
    string name=app_nameResrouseTeststring
resources

3、 图片

图片资源一般使用png格式,使用其他格式的会出现各种问题,貌似不支持gif格式的图片,可是使用Movie来播放gif格式的图片

路径位于:resdrawable

定义格式:可以直接存放图片也可以是xml等配置文件(一般用于自定义组件)

代码调用:getDrawable()
4、 图片的颜色

路径位于:resvaluesmy_drawable.xml,文件名随意

实例:
xml version=1.0 encoding=utf-8
resources
    drawable name=solid_red#FF0000drawable
resources

5、 单位资源

单位资源应该位于resoursesresourses标签下

路径位于:resvaluesdimen.xml ,文件名可以随意

使用和String、color类似

实例:
xml version=1.0 encoding=utf-8
resources
    dimen name=dimen_name2pxdimen
    dimen name=dimen_px5pxdimen
    dimen name=dimen_pt3ptdimen
    dimen name=dimen_dp3dpdimen
resources

6、 Nine-patch(可以拉伸的小图片)

支持图片的拉伸

貌似就是所谓的png图片文件资源,图片在应用view的背景时,如果被设为background则会随view的大小变化做相应的拉伸和收缩,像ImageView这类设置src图片则不随view变化,按其自身大小显示部分或全部!
7、 菜单

菜单即可以从代码中实现也可以在资源文件中配置,这里就是要描述一下第二种

实例
xml version=1.0 encoding=utf-8menu xmlnsandroid=httpschemas.android.comapkresandroid   item           androidid=@+idprevious           androidtitle=@stringprevious           androidenabled=false  androidicon=@androiddrawableic_media_previous        item           androidid=@+idplay_pause           androidtitle=@stringplay           androidicon=@androiddrawableic_media_play    item           androidid=@+idnext           androidtitle=@stringnext           androidicon=@androiddrawableic_menu_nextmenu
8、 Layout布局

这个就是你经常看到的与用户交互的界面的xml文件,就是各个view的排列和嵌套,没什么好说的啦
9、 风格和主题

风格主要是指view的显示风格

路径位于:resvaluesfilename.xml,文件名随意

实例:
xml version=”1.0″ encoding=”utf-8″
resources
   style name=”SpecialText” [email=parent=”@styleText]parent=”@styleText[email]”
   item name=”androidtextSize”18spitem
   item name=”androidtextColor”#008item
style
resources

主题主要针对Activity等, 可以在Android Manifest中定义的application和activity元素将主题添加到整个程序或者某个 Activity,但是主题是不能应用在某一个单独的View里.风格可以自己定义也可以使用程序自带的或是继承已有的风格。

实例:
xml version=1.0 encoding=utf-8resources  style name=CustomTheme    item name=androidwindowNoTitletrueitem    item name=windowFrame@drawablescreen_frameitem    item name=windowBackground@drawablescreen_background_whiteitem    item name=panelForegroundColor#FF000000item    item name=panelBackgroundColor#FFFFFFFFitem    item name=panelTextColorpanelForegroundColoritem    item name=panelTextSize14item    item name=menuItemTextColorpanelTextColoritem    item name=menuItemTextSizepanelTextSizeitem  styleresources
10、 动画

动画资源分为两种,一是实现图片的translate、scale、rotate、alpha四种变化。还可以设置动画的播放特性;另一种是帧动画,逐帧播放设置的资源

路径位于:resanimfilename.xml,文件名随意

先说一下第一种:
set xmlnsandroid=httpschemas.android.comapkresandroid                                   translate androidinterpolator=@androidanimaccelerate_interpolator                                         androidfromXDelta=0 androidtoXDelta=200 androidfromYDelta=0                                         androidtoYDelta=180 androidduration=2000                     scale androidinterpolator=@androidanimaccelerate_interpolator                                         androidfromXScale=1.0 androidtoXScale=2.0 androidfromYScale=1.0                                         androidtoYScale=2.0 androidpivotX=150% androidpivotY=150%                                         androidduration=2000                     alpha androidfromAlpha=1.0 androidtoAlpha=1.0                                         androidduration=@androidintegerconfig_mediumAnimTime                     rotate ....各个属性rotate                    Interpolator 可以使用其子类和属性定义动画的运行方式,先快后慢,先慢后快等Interpolatorset  
下面是第二种资源
animation-list xmlnsandroid=”httpschemas.android.comapkresandroid”
androidoneshot=”true”
    item androiddrawable=”@drawablerocket_thrust1″ androidduration=”200″  
    item androiddrawable=”@drawablerocket_thrust2″ androidduration=”200″  
    item androiddrawable=”@drawablerocket_thrust3″ androidduration=”200″  
animation-list



第二部分:相关文件夹介绍
在Android项目文件夹里面,主要的资源文件是放在res文件夹里面的。assets文件夹是存放不进行编译加工的原生文件,即该文件夹里面的文件不会像xml,java文件被预编译,可以存放一些图片,html,js, css等文件。在后面会介绍如何读取assets文件夹的资源!
目录Directory
资源类型Resource Types
  1. resanim
  2. XML文件,它们被编译进逐帧动画(frame by frame animation)或补间动画(tweened animation)对象

  3. resdrawable
  4. .png、.9.png、.jpg文件,它们被编译进以下的Drawable资源子类型中:

  5. 要获得这种类型的一个资源,可以使用Resource.getDrawable(id)

  6. 位图文件


  7. 9-patches(可变尺寸的位图)


  8. 为了获取资源类型,使用mContext.getResources().getDrawable(R.drawable.imageId)

  9. 注意:放在这里的图像资源可能会被aapt工具自动地进行无损压缩优化。比如,一个真彩色但并不需要256色的PNG可能会被转换为一个带调色板的8位PNG。这使得同等质量的图片占用更少的资源。所以我们得意识到这些放在该目录下的二进制图像在生成时可能会发生变化。如果你想读取一个图像位流并转换成一个位图(bitmap),请把图像文件放在resraw目录下,这样可以避免被自动优化。

  10. reslayout
  11. 被编译为屏幕布局(或屏幕的一部分)的XML文件

  12. resvalues
  13. 可以被编译成很多种类型的资源的XML文件。

  14. 注意不像其他的res文件夹,它可以保存任意数量的文件,这些文件保存了要创建资源的描述,而不是资源本身。XML元素类型控制这些资源应该放在R类的什么地方。

  15. 尽管这个文件夹里的文件可以任意命名,不过下面使一些比较典型的文件(文件命名的惯例是将元素类型包含在该名称之中):

  16. array.xml 定义数组

  17. colors.xml 定义color drawable和颜色的字符串值(color string values)。使用Resource.getDrawable()和Resources.getColor()分别获得这些资源。

  18. dimens.xml定义尺寸值(dimension value)。使用Resources.getDimension()获得这些资源。

  19. strings.xml定义字符串(string)值。使用Resources.getString()或者Resources.getText()获取这些资源。getText()会保留在UI字符串上应用的丰富的文本样式。

  20. styles.xml 定义样式(style)对象。

  21. resxml
  22. 任意的XML文件,在运行时可以通过调用Resources.getXML()读取。

  23. resraw

  24. resassets
  25. 直接复制到设备中的任意文件。它们无需编译,添加到你的应用程序编译产生的压缩文件中。要使用这些资源,可以调用Resources.openRawResource(),参数是资源的ID,即R.raw.somefilename。assets下也可以放置任意文件,使用 Activity.this.getAssets().open(519.txt);打开
复制代码

点评

自由-博弈  不错。。。。。。。  详情 回复 发表于 2016-9-10 13:53:21
莲夜  谢谢楼主的辛苦分享  详情 回复 发表于 2016-4-23 12:37:02
jackluo007  先回复再看看  详情 回复 发表于 2014-11-5 15:45:44
12

查看全部评分

顶(4) 踩(0)

使用道具 举报

Rank: 1

积分
21
金币
24
注册时间
2011-8-13
发表于 2011-9-10 22:16:05 |显示全部楼层
我是每天看贴无数,基本上不回贴.后来发现这样很傻,
很多比我注册晚的人财产都比我多,
于是我就把这段文字保存在记事本里,
每看一贴就复制粘贴一次.顺便帮LZ把贴子顶上去
1

查看全部评分

顶(0) 踩(0)

使用道具 举报

荣誉版主

X8 MT15i LT26

积分
15602
金币
18930
注册时间
2011-1-27

Hiapk美化组 Hiapk高达 Hiapk荣誉版主 Hiapk发帖精英 Hiapk民间高手 Hiapk版主 Hiapk帅哥 Hiapk土豪

发表于 2011-9-10 22:34:00 |显示全部楼层
占个首页
顶(0) 踩(0)

使用道具 举报

Rank: 1

积分
6
金币
9
注册时间
2011-9-7
发表于 2011-9-10 22:51:24 |显示全部楼层
技术贴好啊
顶(0) 踩(0)

使用道具 举报

Rank: 1

积分
39
金币
43
注册时间
2011-4-28
发表于 2011-9-10 23:02:15 |显示全部楼层
收藏了
顶(0) 踩(0)

使用道具 举报

Rank: 2

积分
56
金币
86
注册时间
2010-1-9
发表于 2011-9-11 19:54:52 |显示全部楼层
好东西,顶起来!!!!
顶(0) 踩(0)

使用道具 举报

Rank: 7Rank: 7Rank: 7

积分
3507
金币
6430
注册时间
2010-7-18
发表于 2011-9-11 20:03:29 |显示全部楼层
版主 给力.....
顶(0) 踩(0)

使用道具 举报

A4.安卓机器猫

打酱油出身

Rank: 4

积分
629
金币
759
注册时间
2011-8-22
发表于 2011-9-11 22:31:29 |显示全部楼层
支持。。。嘻嘻
顶(0) 踩(0)

使用道具 举报

Rank: 7Rank: 7Rank: 7

积分
3050
金币
5702
注册时间
2011-8-5
发表于 2011-9-11 22:35:54 |显示全部楼层
技术贴好啊

点评

龟仙人8020  绝世好贴啊。。。。。。。。。。。  详情 回复 发表于 2016-9-12 21:42:40
春夏秋冬121  好 技术 先定一下  发表于 2012-12-7 11:54:26
顶(0) 踩(0)

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

用安卓手机,装安卓市场!


Archiver|手机版|安卓网 ( 闽ICP备09004645号 )

GMT+8, 2017-9-20 20:50

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部