android 修改手机系统,【教程贴丨09-29】手机系统APK自己来修改

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

第五个教程是:

怎样修改锁屏 ---任你修改

1、相关锁屏的文件是system\framework\framework-res.apk和system\framework\android.policy.jar,framework-res.apk是关于界面显示的,我主要是修改它,android.policy.jar关于动做执行的,java不懂暂时无力修改。

1、相关锁屏的文件是system\framework\framework-res.apk和system\framework\android.policy.jar,framework-res.apk是关于界面显示的,我主要是修改它,android.policy.jar关于动做执行的,java不懂暂时无力修改。

2、直接用winrar打开framework-res.apk可以看到,中兴锁屏输出界面文件是framework-res.apk\res\layout\unlock_dna_typeb.xml,不过这是已经编译成16进制的文件,所以需要反编译才能看到原码,如果只是改图片和文字颜色也可以直接用16进制文档编辑器来做修改。注:此文件是国行摆钟锁屏的特有文件,原生锁屏是没有这个文件的,原生锁屏的代码在android.policy.jar内

3、用反编译工具反编译framework-res.apk,在获得的反编译目录内(我以反编译到framework-res目录为例),framework-res\res\layout\unlock_dna_typeb.xml文件就是锁屏输出的界面,用文本编辑器打开这个文件,原码说明参看下列代码备注:

<

com.android.internal.policy.impl.ZteLockScreenView

android:background="@drawable/unlock_bg" android:layout_width="fill_parent"

android:layout_height="fill_parent"

//ulock_bg是背景,改相应图片

xmlns:android="http://schemas.android.com/apk/res/android">

<

TextView android:textSize="19.0sp" android:textStyle="bold"

android:textColor="#ff000000" android:gravity="right" android:id="@id/carrier"

android:layout_width="480.0px" android:layout_height="wrap_content"

android:layout_marginTop="16.0px" android:layout_marginRight="15.0px" /> //

#ff000000是营运商颜色,默认#ff000000是黑色完全不透明

android:layout_width="fill_parent" android:layout_height="wrap_content"

android:layout_marginLeft="0.0px" android:layout_marginTop="103.0px">

<

LinearLayout android: orientation="horizontal" android:id="@id/timeDisplay"

android:layout_width="243.0px" android:layout_height="75.0px"

android:layout_marginLeft="12.0px" android:layout_marginTop="0.0px">

<

ImageView android:id="@id/hour_1" android:layout_width="wrap_content"

android:layout_height="wrap_content" android:src="@drawable/time_8"

/>

< ImageView android:id="@id/hour_0"

android:layout_width="wrap_content" android:layout_height="wrap_content"

android:src="@drawable/time_8" />

< ImageView

android:id="@id/parting_point" android:layout_width="wrap_content"

android:layout_height="wrap_content" android:layout_marginLeft="2.0px"

android:src="@drawable/parting_point" />

< ImageView

android:id="@id/minute_1" android:layout_width="wrap_content"

android:layout_height="wrap_content" android:layout_marginLeft="2.0px"

android:src="@drawable/time_8" />

< ImageView android:id="@id/minute_0"

android:layout_width="wrap_content" android:layout_height="wrap_content"

android:src="@drawable/time_8" />

<

/LinearLayout> //以上是时间显示,时间数字通过调用图片time_0至9,中间冒号调用图片parting_point

<

ImageView android:id="@id/am_pm" android:layout_width="wrap_content"

android:layout_height="wrap_content" android:layout_marginLeft="259.0px"

android:layout_marginTop="39.0px" android:src="@drawable/am" />

//这段调用图片am_zh和pm_zh来显示上午和下午,换图片即可

< /RelativeLayout>

< TextView

android:id="@id/division" android:background="#ff605f5f"

android:layout_width="318.0px" android:layout_height="2.0px"

android:layout_marginLeft="0.0px" android:layout_marginTop="180.0px" />

//定义横线位置与颜色

android:textColor="#ff605f5f" android:id="@id/date"

android:layout_width="wrap_content" android:layout_height="wrap_content"

android:layout_marginLeft="24.0px" android:layout_marginTop="193.0px"

android:text="@string/default_date" /> //定义日期位置与颜色

android:textAppearance="?textAppearanceMedium" android:textColor="#ff605f5f"

android:id="@id/status1" android:layout_width="wrap_content"

android:layout_height="wrap_content" android:layout_marginLeft="24.0px"

android:layout_marginTop="4.0dip" android:drawablePadding="4.0dip"

android:layout_below="@id/date" /> //定义星期位置与颜色

android:id="@id/arrow_left" android:visibility="invisible"

android:layout_width="wrap_content" android:layout_height="wrap_content"

android:layout_marginLeft="36.0px" android:layout_marginTop="424.0px"

android:src="@drawable/arrow_left" /> //定义向左下指示图片及其位置

android:id="@id/arrow_right" android:visibility="invisible"

android:layout_width="wrap_content" android:layout_height="wrap_content"

android:layout_marginLeft="142.0px" android:layout_marginTop="319.0px"

android:src="@drawable/arrow_right" />

//定义向右上指示图片及其位置

android:id="@id/unlock_handler" android:clickable="true"

android:layout_width="480.0px" android:layout_height="480.0px"

android:layout_alignParentRight="true" android:layout_alignParentBottom="true"

/>

< com.android.internal.policy.impl.UnlockAniView

android:id="@id/unlock_animation" android:visibility="gone"

android:layout_width="480.0px" android:layout_height="480.0px"

android:layout_alignParentRight="true" android:layout_alignParentBottom="true"

/>

< ImageView android:id="@id/unlock_icon"

android:layout_width="wrap_content" android:layout_height="wrap_content"

android:layout_marginLeft="20.0px" android:layout_marginTop="654.0px"

android:src="@drawable/unlock_icon" /> //定义向开锁图标及其位置

android:id="@id/selected_icon" android:visibility="invisible"

android:layout_width="wrap_content" android:layout_height="wrap_content"

android:layout_marginLeft="-10.0px" android:layout_marginTop="620.0px"

android:src="@drawable/selected_icon" />

< ImageView

android:id="@id/silence_icon" android:layout_width="wrap_content"

android:layout_height="wrap_content" android:layout_marginLeft="381.0px"

android:layout_marginTop="298.0px" android:src="@drawable/silence_in" />

//定义移动到声音图标后显示的图片及其位置

android:visibility="invisible" android:layout_width="wrap_content"

android:layout_height="wrap_content" android:layout_marginLeft="349.0px"

android:layout_marginTop="272.0px" android:src="@drawable/selected_silence_icon"

/> //定义移动到开锁图标后显示的图片及其位置

android:id="@id/emergencyCallButton" android:layout_width="wrap_content"

android:layout_height="wrap_content" android:src="@null"

android:layout_alignParentRight="true" android:layout_alignParentBottom="true"

/>

< ImageView android:id="@id/emergency_icon"

android:layout_width="wrap_content" android:layout_height="wrap_content"

android:layout_marginLeft="409.0px" android:layout_marginTop="688.0px"

android:src="@drawable/emergence_icon" /> //定义声音图标及其位置

<

/com.android.internal.policy.impl.ZteLockScreenView>

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

4、修改完成后,重新编译framework-res,编译过程中可能会出现一些错误,是因为windows生成的无效图片和语言包定义差异造成的,根据提示修改或删除,因为我们需要的只是编译unlock_dna_typeb.xml,其它错误在这里不必深究。

5、提取修改后重新编译成16进制的unlock_dna_typeb.xml文件,用winrar打开原版的framework-res.apk,把刚提取出来的unlock_dna_typeb.xml拖到res\layout目录下替换原来的文件,把修改后的图片拖到res\drawable-hdpi目录下替换原来的图片。

6、完成上面步逐锁屏显示界面就改好了,注意就算在第4步编译过程中没问题成功编译也不是要使用你重新编译的这个framework-res.apk,因为重新编译出来的文件跟原来的签名不符,只有替换原版才可以。

7、另一种方法,不反编译,直接用16进制编辑器改文字颜色,在编辑器中点击搜索>>查找,输入0800001c(0800001c

应该16进制的定义颜色语句),在找到的0800001c后面8位就是颜色代码,注意在16进制中颜色代码是反相的,如上面第3步中日期颜色代码是ff 60 5f

5f,在这里因该显示为5F 5F 60

FF,按照反序修改这个颜色代码就可以了,从3步中得知我们可以修改res\drawable-hdpi目录下的图片,进行相应修改即可。

任意反编译安卓应用 自由定制任何没有加固过的APK安装包,可以修改应用程序图标和应用程序名称、替换界面吗上面的任何文字和图片、翻译或者汉化制作多语言版本,更支持通过高级的SMALI代码,实现对应用软件的破解。 海量安卓应用,游戏模板 提供海量最新最全的应用作为定制模板,可以直接下载后进行反向工程、破解、修改、查看源代码、查看安装包信息等操作(部分应用由于做了加固,暂时不能进行反向工程)。 多渠道打包发布 通过已经打包的APK安装包作为模板,反编译后,动态修改配置文件或者SMALI代码中的渠道标志来实现批量重新多渠道打包,由于不是源代码级别的打包,所以大大提升了批量打包的速度和效率。 随机包名,应用名打包 对于成人影院、成人游戏等APP,经常会出现被手机安全软件和手机管家类软件报毒的情况,可以通过本功能定时随机更换包名和应用名称重新打包,再配合网页下载程序,用户就可以实时下载到最新的安装包,避免了报毒等情况。 查看安卓应用源代码 经过对APK安装包进行反编译,然后通过反映射的方式获取源代码。反编译获取的JAVA代码适合对源代码进行分析,查看应用内部逻辑,不可进行反编译,反编译工程只能在SMALI代码基础上修改。 众多安卓应用反编译应用 软件还提供了大量的小工具,用来查看安装包信息,并可以在手机连接电脑的情况下,查看手机信息、实时日志、安装和管理手机的应用程序、管理手机文件等等,并可以直接定制修改手机已经安装的应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值