rom添加农历锁屏rom添加农历锁屏
修改之前要准备的文件:framework-res.apk,android.policy.jar,framework.jar
一、修改framework-res.apk,添加所需要的资源[size=10.5000pt]
2.反编译framework-res.apk[size=10.5000pt]
3.打开framework-res\res\values\arrays.xml文件[size=10.5000pt]
在该文件末尾的""前加入下列代码: 1
2 [size=9.0000pt]正月
3 ...
rom添加农历锁屏
修改之前要准备的文件:framework-res.apk,android.policy.jar,framework.jar
一、修改framework-res.apk,添加所需要的资源[size=10.5000pt]
2.反编译framework-res.apk[size=10.5000pt]
3.打开framework-res\res\values\arrays.xml文件[size=10.5000pt]
在该文件末尾的""前加入下列代码: 1
2 [size=9.0000pt]- 正月
3 [size=9.0000pt]- 二月
4 [size=9.0000pt]- 三月
5 [size=9.0000pt]- 四月
6 [size=9.0000pt]- 五月
7 [size=9.0000pt]- 六月
8 [size=9.0000pt]- 七月
9 [size=9.0000pt]- 八月
10 [size=9.0000pt]- 九月
11 [size=9.0000pt]- 十月
12 [size=9.0000pt]- 冬月
13 [size=9.0000pt]- 腊月
14 [size=9.0000pt]
15 [size=9.0000pt]
16 [size=9.0000pt]- 一
17 [size=9.0000pt]- 二
18 [size=9.0000pt]- 三
19 [size=9.0000pt]- 四
20 [size=9.0000pt]- 五
21 [size=9.0000pt]- 六
22 [size=9.0000pt]- 七
23 [size=9.0000pt]- 八
24 [size=9.0000pt]- 九
25 [size=9.0000pt]- 十
26 [size=9.0000pt]- 十一
27 [size=9.0000pt]- 十二
28 [size=9.0000pt]
29 [size=9.0000pt]
30 [size=9.0000pt]- 初
31 [size=9.0000pt]- 十
32 [size=9.0000pt]- 廿
33 [size=9.0000pt]- 卅
34 [size=9.0000pt]
35 [size=9.0000pt]
36 [size=9.0000pt]- 甲
37 [size=9.0000pt]- 乙
38 [size=9.0000pt]- 丙
39 [size=9.0000pt]- 丁
40 [size=9.0000pt]- 戊
41 [size=9.0000pt]- 己
42 [size=9.0000pt]- 庚
43 [size=9.0000pt]- 辛
44 [size=9.0000pt]- 壬
45 [size=9.0000pt]- 癸
46 [size=9.0000pt]
47 [size=9.0000pt]
48 [size=9.0000pt]- 子(鼠
49 [size=9.0000pt]- 丑(牛
50 [size=9.0000pt]- 寅(虎
51 [size=9.0000pt]- 卯(兔
52 [size=9.0000pt]- 辰(龙
53 [size=9.0000pt]- 巳(蛇
54 [size=9.0000pt]- 午(马
55 [size=9.0000pt]- 未(羊
56 [size=9.0000pt]- 申(猴
57 [size=9.0000pt]- 酉(鸡
58 [size=9.0000pt]- 戌(狗
59 [size=9.0000pt]- 亥(猪
60 [size=9.0000pt]
61 [size=9.0000pt]
62 [size=9.0000pt]- 鼠
63 [size=9.0000pt]- 牛
64 [size=9.0000pt]- 虎
65 [size=9.0000pt]- 兔
66 [size=9.0000pt]- 龙
67 [size=9.0000pt]- 蛇
68 [size=9.0000pt]- 马
69 [size=9.0000pt]- 羊
70 [size=9.0000pt]- 猴
71 [size=9.0000pt]- 鸡
72 [size=9.0000pt]- 狗
73 [size=9.0000pt]- 猪
74 [size=9.0000pt]
75 [size=9.0000pt]
76 [size=9.0000pt]- 甲
77 [size=9.0000pt]- 乙
78 [size=9.0000pt]- 丙
79 [size=9.0000pt]- 丁
80 [size=9.0000pt]- 戊
81 [size=9.0000pt]- 己
82 [size=9.0000pt]- 庚
83 [size=9.0000pt]- 辛
84 [size=9.0000pt]- 壬
85 [size=9.0000pt]- 癸
86 [size=9.0000pt] 87 [size=9.0000pt]
88 [size=9.0000pt]- 子
89 [size=9.0000pt]- 丑
90 [size=9.0000pt]- 寅
91 [size=9.0000pt]- 卯
92 [size=9.0000pt]- 辰
93 [size=9.0000pt]- 巳
94 [size=9.0000pt]- 午
95 [size=9.0000pt]- 未
96 [size=9.0000pt]- 申
97 [size=9.0000pt]- 酉
98 [size=9.0000pt]- 戌
99 [size=9.0000pt]- 亥
100 [size=9.0000pt] 101 [size=9.0000pt]
102 [size=9.0000pt]- 初
103 [size=9.0000pt]- 十
104 [size=9.0000pt]- 廿
105 [size=9.0000pt]- 三
106 [size=9.0000pt] 107 [size=9.0000pt]
108 [size=9.0000pt]- 正
109 [size=9.0000pt]- 二
110 [size=9.0000pt]- 三
111 [size=9.0000pt]- 四
112 [size=9.0000pt]- 五
113 [size=9.0000pt]- 六
114 [size=9.0000pt]- 七
115 [size=9.0000pt]- 八
116 [size=9.0000pt]- 九
117 [size=9.0000pt]- 十
118 [size=9.0000pt]- 冬
119 [size=9.0000pt]- 腊
120 [size=9.0000pt] 复制代码
[size=10.5000pt] 4.打开framework-res\res\values\strings.xml[size=10.5000pt]
5.在该文件末尾的""前加入下列代码:
121
初十 122 闰 123 年)-
124 1900年1月31日 125 初十
126 农历
127 闰
128 月
129 年
130 yyyy年MM月dd日 131 未读短信:%s 132 未读彩信:%s 133 未接电话:%s 复制代码
6.打开framework-res\res\values\public.xml[size=10.5000pt]
7.在该文件中加入刚才arrays.xml添加的字符串资源的id定义[size=10.5000pt]
例如(ID以你的最大值为准后延,由于16进制,所以9后面是a,请注意):
134
135 136 137 138 139 140 141 142 143 144 145 146 复制代码
8.回编译apk文件夹,把编译好的apk里的resource提取出来换到原来的apk里面
[size=10.5000pt]
[size=10.5000pt]
二、修改jar文件[size=10.5000pt]
1.反编译framework.jar得到包含smali文件的文件夹 2. 解压出来的文件放入framework\android\util
3.回编译得到classes.dex文件,拖入framework.jar内替换原来的 4.修改android.policy.jar文件
5.反编译android.policy.jar得到包含smail文件的文件夹 6.用notepad++打开android.policy\com\android\internal\policy\impl\LockScreen.smali,查
找(.line [0-9]+),全部删除
7.查找 .method private refreshTimeAndDateDisplay()V
8.在.method private refreshTimeAndDateDisplay()V和.end method里的内容替换为:
147 .method private refreshTimeAndDateDisplay()V
148 .registers 6
149
150 .prologue
151
152 iget-object v1, p0,
Lcom/android/internal/policy/impl/LockScreen;->mRotarySelector:Lcom/android/internal/widget/RotarySelector;
153
154 invoke-virtual {v1}, Lcom/android/internal/widget/RotarySelector;->invalidate()V 155
156
157 new-instance v0, Landroid/util/Lunar;
158
159 invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar; 160
161 move-result-object v1
162
163 invoke-direct {v0, v1}, Landroid/util/Lunar;->(Ljava/util/Calendar;)V 164
165
166 .local v0, lunar:Landroid/util/Lunar;
167 iget-object v1, p0, Lcom/android/internal/policy/impl/LockScreen;->mDate:Landroid/widget/TextView;
168
169 new-instance v2, Ljava/lang/StringBuilder;
170
171 invoke-direct {v2}, Ljava/lang/StringBuilder;->()V
172
173 iget-object v3, p0, Lcom/android/internal/policy/impl/LockScreen;->mDateFormatString:Ljava/lang/String;
174
175 new-instance v4, Ljava/util/Date;
176
177 invoke-direct {v4}, Ljava/util/Date;->()V
178
179 invoke-static {v3, v4}, Landroid/text/format/DateFormat;->format(Ljava/lang/CharSequence;Ljava/util/Date;)Ljava/lang/CharSequence;
180
181 move-result-object v3
182
183 invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
184
185 move-result-object v2
186
187 invoke-virtual {v0}, Landroid/util/Lunar;->isZhRegion()Z 188
189 move-result v3
190
191 if-eqz v3, :cond_49
192
193 new-instance v3, Ljava/lang/StringBuilder;
194
195 invoke-direct {v3}, Ljava/lang/StringBuilder;->()V 196
197 const-string v4, "\n"
198
199 invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
200
201 move-result-object v3
202
203 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
204
205 move-result-object v3
206
207 invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
208
209 move-result-object v3
210
211 :goto_3d
212 invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
213
214 move-result-object v2
215
216 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
217
218 move-result-object v2
219
220 invoke-virtual {v1, v2}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
221
222
223 return-void
224
225
226 :cond_49
227 const-string v3, ""
228
229 goto :goto_3d
230 .end method
复制代码
9.相同修改
android.policy\com\android\internal\policy\impl\PatternUnlockScreen.smali 10.回编译为classes.dex,将classes.dex拖入android.policy.jar替换原有文件
本文档为【rom添加农历锁屏】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。