ROM定制中高级教程,如何自定义桌面快捷方式
发布时间:2012-11-10 21:19:55
发布时间:2012-11-10 21:19:55
ROM定制中高级教程,如何自定义桌面快捷方式!!
好久没发帖子了,今天就讲讲如何自定义桌面快捷方式(感谢猩猩大师的指导),希望能给刚刚学定制ROM的兄弟提供帮助!
准备工作:
1.配置好JAVA环境不会的看这个帖子:http://bbs.anzhi.com/forum.php?mod=viewthread&tid=37975&highlight=%B4%F3%D0%C7%D0%C7
2.下载aapt.exe!这个工具一般在SDK的platforms下的tools下面有,我这里放上一个:aapt.rar(1.61 MB, 下载次数: 1032)
2011-11-20 11:06 上传
下载次数: 1032
下载积分: 金币 -1 元
,这个文件放在你的CMD工作目录下!
3.下载emeditor之类的文本编辑器,用来编辑XML文件!
以上工作准备完毕了那么就正式开始工作了!!
注:我的电脑系统XP3,修改sense的桌面快捷方式!
第一步:打开system/customize/MNS/default.xml:如图:
2011-11-20 11:29 上传
下载附件 (80.98 KB)
第二步:点击搜索:搜索
2011-11-20 11:36 上传
下载附件 (37.9 KB)
2011-11-20 11:36 上传
下载附件 (58.49 KB)
第三步:然后在桌面定义部分中找“
第四步:假设要修改的快捷方式所在的场景是HTC,排在3中找到位置的第一个(
第五步:然后看
第六步:看个所包含的快捷方式的例子:如图:
2011-11-20 11:46 上传
下载附件 (127.36 KB)
这个就是场景一里面包含的应用程序了!
我们一安智市场为例,我想把安智市场从左往右的第四个该怎么弄呢?
首先要确定你这个系统这个位置有没有程序了,如果有那就简单了直接修改就行了,如果没有就直接加上以下的...修改同理按照以下的修改就行了:
现在就为大家逐一说明:
如何得到APK的启动时的activity,这就要用到准备工作时第二步的aapt工具了,
将你要得到activity的APK放入和aapt统一的文件夹,就是你的工作文件夹,放入之后,,打开命令输入:CMD然后继续输入:aapt d badging cn.goapk.market.apk 如图:(因为我的软件名为cn.goapk.market.apk)
2011-11-20 12:05 上传
下载附件 (19.37 KB)
回车后就看见了:
2011-11-20 12:05 上传
下载附件 (46.33 KB)
我改后的截图:
2011-11-20 12:08 上传
下载附件 (464.55 KB)
教程到这里就结束了!下回分解自定义插件到桌面原理差不多,嘿嘿!有任何不懂的可以关注我微博,第一时间解答(卖广告)
改好的赶紧刷机试一试吧
weibo.com/cxbobo
t.qq.com/blessing
教大家给CM10添加归属地 ROM定制专用
CM10添加归属地的方法,希望可以帮到一些需要的朋友
CM10添加归属地方法;
1,提取system/app/Phone.apk,在用解压软件打开提取里面的classes.dex
2,安装我提供的反编译工具
3,鼠标放到classes.dex 上右键 执行反编译 之后会得到Smali_classes文件夹,找到里面com/android/phone/CallCard.smali文件
4,使用Notepad2文本软件打开CallCard.smali
下面的隐藏了哈,
本帖隐藏的内容
5,查找:
1. .method private static final showCachedImage(Landroid/widget/ImageView;Lcom/android/internal/telephony/CallerInfo;)Z
复制代码
在这个代码上面添加:
1. .method private setGeoDescription(Lcom/android/internal/telephony/CallerInfo;)V
2. .registers 5
3. .parameter "info"
4.
5. .prologue
6. const/16 v2, 0x8
7.
8. .line 36
9. if-nez p1, :cond_5
10.
11. .line 51
12. :cond_4
13. :goto_4
14. return-void
15.
16. .line 38
17. :cond_5
18. iget-object v0, p0, Lcom/android/phone/CallCard;->mCallTypeLabel:Landroid/widget/TextView;
19.
20. invoke-virtual {v0}, Landroid/widget/TextView;->getVisibility()I
21.
22. move-result v0
23.
24. if-ne v0, v2, :cond_4
25.
26. .line 39
27. iget-object v0, p1, Lcom/android/internal/telephony/CallerInfo;->geoDescription:Ljava/lang/String;
28.
29. invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
30.
31. move-result v0
32.
33. if-eqz v0, :cond_1e
34.
35. .line 40
36. invoke-virtual {p0}, Lcom/android/phone/CallCard;->getContext()Landroid/content/Context;
37.
38. move-result-object v0
39.
40. iget-object v1, p1, Lcom/android/internal/telephony/CallerInfo;->phoneNumber:Ljava/lang/String;
41.
42. invoke-virtual {p1, v0, v1}, Lcom/android/internal/telephony/CallerInfo;->updateGeoDescription(Landroid/content/Context;Ljava/lang/String;)V
43.
44. .line 42
45. :cond_1e
46. iget-object v0, p1, Lcom/android/internal/telephony/CallerInfo;->geoDescription:Ljava/lang/String;
47.
48. invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
49.
50. move-result v0
51.
52. if-nez v0, :cond_4
53.
54. .line 43
55. iget-object v0, p0, Lcom/android/phone/CallCard;->mCallTypeLabel:Landroid/widget/TextView;
56.
57. const/4 v1, 0x0
58.
59. invoke-virtual {v0, v1}, Landroid/widget/TextView;->setVisibility(I)V
60.
61. .line 44
62. iget-object v0, p0, Lcom/android/phone/CallCard;->mCallTypeLabel:Landroid/widget/TextView;
63.
64. iget-object v1, p1, Lcom/android/internal/telephony/CallerInfo;->geoDescription:Ljava/lang/String;
65.
66. invoke-virtual {v0, v1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
67.
68. .line 45
69. iget-object v0, p0, Lcom/android/phone/CallCard;->mCallTypeLabel:Landroid/widget/TextView;
70.
71. iget v1, p0, Lcom/android/phone/CallCard;->mTextColorCallTypeSip:I
72.
73. invoke-virtual {v0, v1}, Landroid/widget/TextView;->setTextColor(I)V
74.
75. .line 46
76. iget-object v0, p1, Lcom/android/internal/telephony/CallerInfo;->geoDescription:Ljava/lang/String;
77.
78. iget-object v1, p0, Lcom/android/phone/CallCard;->mPhoneNumber:Landroid/widget/TextView;
79.
80. invoke-virtual {v1}, Landroid/widget/TextView;->getText()Ljava/lang/CharSequence;
81.
82. move-result-object v1
83.
84. invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
85.
86. move-result v0
87.
88. if-eqz v0, :cond_4
89.
90. .line 47
91. iget-object v0, p0, Lcom/android/phone/CallCard;->mPhoneNumber:Landroid/widget/TextView;
92.
93. invoke-virtual {v0, v2}, Landroid/widget/TextView;->setVisibility(I)V
94.
95. goto :goto_4
96. .end method
复制代码
6,查找
1. invoke-direct {p0, p4}, Lcom/android/phone/CallCard;->updateCallTypeLabel(Lcom/android/internal/telephony/Call;)V
复制代码
在这段代码下面加
1. move-object/from16 v0, p1
2.
3. invoke-direct {p0, v0}, Lcom/android/phone/CallCard;->setGeoDescription(Lcom/android/internal/telephony/CallerInfo;)V
复制代码
之后保存。
7,鼠标放在Smali_classes文件夹上,右键选回编译DEX文件夹,这样得到Smali_classes_classes.dex文件,改名classes.dex
拖拽回Phone.apk,这样Phone.apk就完成了
8,提取system/framework/ext.jar 用解压软件打开,然后打开com/android/i18n/phonenumbers/geocoding/data/
把我提供的数据库文件86_zh,拖拽进去,就可以了。
数据库文件:86_zh1.rar(107.75 KB, 下载次数: 150)
2012-7-28 21:21 上传
下载次数: 150
下载积分: 金币 -1 元
这样归属地文件就完成了,不适合新人,新人慢慢学习吧。
这个需要JAVA支持,我就不提供了,
提供2个工具:
本帖隐藏的内容
反编回编工具:http://dl.dbank.com/c0mxcem8pk
Notepad2_CN1.rar(740.39 KB, 下载次数: 75)
2012-7-28 21:21 上传
下载次数: 75
下载积分: 金币 -1 元
以上是我总结的,应该适合近期CM10添加,其中也对佐太罗发布的文件进行了对比
PS,如果上面的方法帮了你,记得回来加分
机型:DEFY,其他机型应该差不多少吧,自己研究一下吧