1. gvim framework-res/res/values/public.xml

    <public type="string" name="chn_ten" id="0x01040519"/>    <public type="string" name="chn_double" id="0x0104051a"/>    <public type="string" name="chn_year" id="0x0104051b"/>    <public type="string" name="lunar_date_template" id="0x0104051c"/>    <public type="string" name="lunar_date_chushi" id="0x0104051d"/>    <public type="string" name="lunar_name" id="0x0104051e"/>    <public type="string" name="lunar_run_month" id="0x0104051f"/>    <public type="string" name="lunar_month" id="0x01040520"/>    <public type="string" name="lunar_year" id="0x01040521"/>    <public type="string" name="lunar_date_format" id="0x01040522"/>    <public type="string" name="lockscreen_unread_sms" id="0x01040523"/>    <public type="string" name="lockscreen_unread_mms" id="0x01040524"/>    <public type="string" name="lockscreen_missed_call" id="0x01040525"/>

2.gvim framework-res/res/values/strings.xml

    <string name="chn_ten">初十</string>    <string name="chn_double"></string>    <string name="chn_year">年)-</string>    <string name="lunar_date_template">1900年1月31日</string>    <string name="lunar_date_chushi">初十</string>    <string name="lunar_name">农历</string>    <string name="lunar_run_month"></string>    <string name="lunar_month"></string>    <string name="lunar_year"></string>    <string name="lunar_date_format">yyyy年MM月dd日</string>    <string name="lockscreen_unread_sms">未读短信:%s</string>    <string name="lockscreen_unread_mms">未读彩信:%s</string>    <string name="lockscreen_missed_call">未接电话:%s</string>

3.gvim framework-res/res/values/arrays.xml

    <string-array name="chinese_month">    <item>正月</item>    <item>二月</item>    <item>三月</item>    <item>四月</item>    <item>五月</item>    <item>六月</item>    <item>七月</item>    <item>八月</item>    <item>九月</item>    <item>十月</item>    <item>冬月</item>    <item>腊月</item>    </string-array>    <string-array name="chinese_month1">    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item>十一</item>    <item>十二</item>    </string-array>    <string-array name="chinese_ten">    <item></item>    <item></item>    <item>廿</item>    <item></item>    </string-array>    <string-array name="chinese_gan">    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    </string-array>    <string-array name="chinese_zhi">    <item>子(鼠</item>    <item>丑(牛</item>    <item>寅(虎</item>    <item>卯(兔</item>    <item>辰(龙</item>    <item>巳(蛇</item>    <item>午(马</item>    <item>未(羊</item>    <item>申(猴</item>    <item>酉(鸡</item>    <item>戌(狗</item>    <item>亥(猪</item>    </string-array>    <string-array name="lunar_animals">    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    </string-array>    <string-array name="lunar_gans">    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    </string-array>    <string-array name="lunar_zhis">    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    </string-array>    <string-array name="lunar_chinese_tens">    <item></item>    <item></item>    <item>廿</item>    <item></item>    </string-array>    <string-array name="lunar_chinese_month">    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    <item></item>    </string-array>

4. 修改android.policy.jar中的classes.dex中的com/android/internal/policy/impl/KeyguardStatusViewManager.smali

 1)取得policy.jar中要修改的起始行(1892)

sed -n '/.method\ refreshDate/=' out_policy_jar/com/android/internal/policy/impl/KeyguardStatusViewManager.smali 

 2)取得policy.jar中要修改的末尾行(1919)

sed -n '1892,/.end\ method/{=}' out_policy_jar/com/android/internal/policy/impl/KeyguardStatusViewManager.smali | sed -n '$ p'

 3)把1892至1919行删除,用以下代码替换之

.method refreshDate()V    .registers 6    .prologue    .line 889    iget-object v1, p0, Lcom/android/internal/policy/impl/KeyguardStatusViewManager;->mDateView:Landroid/widget/TextView;    if-eqz v1, :cond_42    .line 890    new-instance v0, Ljava/util/Date;    invoke-direct {v0}, Ljava/util/Date;-><init>()V    .line 891    .local v0, now:Ljava/util/Date;    invoke-virtual {v0}, Ljava/util/Date;->getYear()I    move-result v1    add-int/lit16 v1, v1, 0x76c    invoke-virtual {v0}, Ljava/util/Date;->getMonth()I    move-result v2    invoke-virtual {v0}, Ljava/util/Date;->getDate()I    move-result v3    invoke-static {v1, v2, v3}, Landroid/util/Lunar;->setLunar(III)V    .line 892    iget-object v1, p0, Lcom/android/internal/policy/impl/KeyguardStatusViewManager;->mDateView:Landroid/widget/TextView;    new-instance v2, Ljava/lang/StringBuilder;    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V    iget-object v3, p0, Lcom/android/internal/policy/impl/KeyguardStatusViewManager;->mDateFormatString:Ljava/lang/String;    invoke-static {v3, v0}, Landroid/text/format/DateFormat;->format(Ljava/lang/CharSequence;Ljava/util/Date;)Ljava/lang/CharSequence;    move-result-object v3    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;    move-result-object v2    const-string v3, " "    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;    move-result-object v2    const/4 v3, 0x5    const/4 v4, 0x0    invoke-static {v3, v4}, Landroid/util/Lunar;->getLunar(IZ)Ljava/lang/String;    move-result-object v3

5.提取framework.jar的dex文件反编译,将Lunar.smali放到/android/util/目录下,回编译后替换classex.dex。

 Lunar.rar (From:http://blog.sina.com.cn/s/blog_6fe289450101az44.html)

6. 一张图片展示修改结果(系统版本U8950DV100R001C17B949):


关于framework.jar与android.policy.jar的反编译与编译:

1. 用unzipframework.jar -d fw_jar可看到classes.dex文件

2.baksmail classes.dex -o out_framework_jar/反编译classes.dex文件

3.smail out_framework_jar/ -o framework_new.dex 重新编译得到新的dex文件

4. 再用zip把dex文件拖放到framework.jar内即可

更多相关文章

  1. Android(安卓)Gradle
  2. Android(安卓)studio 打包aar
  3. 签名keystore一系列
  4. tiny210 android 移植过程中的几个问题
  5. android ListView增加Animation效果
  6. Android将String保存为SD卡中TXT文件的方法
  7. Ubuntu 14.04 下 android studio 安装 和 配置
  8. Android(安卓)横竖屏幕切换(layout-land和layout-port)
  9. android中XMl文件的读取

随机推荐

  1. Android 自定义PopupWindow动画效果
  2. android 使用randerScript实现图片模糊效
  3. [置顶] android 内存泄露那些事情之Handl
  4. android用异步操作AsyncTask编写文件查看
  5. Android之 .9.png 篇
  6. 让你的 EditText 全部清除
  7. Android OAUTH
  8. android 搜索时关键字变色
  9. 在应用程序使用android google搜索功能
  10. 取android:versionCode