如果你还没有论坛的账号,赶快注册吧!
立即注册

合作站点账号登陆

查看: 1097|回复: 1
打印 上一主题 下一主题

[ROM移植] ROM移植产生的一些BUG及修复方法

[复制链接] [提交至百度]

23

主题

23

帖子

2344

积分

超级版主

Rank: 8Rank: 8

积分
2344
跳转到指定楼层
楼主
发表于 2018-6-27 09:30:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
扫码领红包
本帖最后由 ironMan.K 于 2018-6-27 09:32 编辑

? ?? ?移植产生的一些bug及修复方法
BUG1:飞行模式
??MIUI每周的更新都会更新framework-res.apk这个文件,因此每周移植之后,需要提取最新的framework-res.apk,反编译,找到values这个文件夹,把附件中解压得到的arrays.xmlbools.xml替换进去,回编译替换新的resources.arsc,再放到卡刷包的system/framework里面替换掉原来的framework-res.apk,即可修复飞行模式!


BUG2:通知栏黑边,锁屏卡顿
??MIUI每周的更新都会更新framework.jar这个文件,因此每周移植之后,需要提取新的framework.jar,反编译,找到 framework/smali/android/app/extraactivitymanaget.smali这个文件,找到GT-i9000,更改为我们设备的值“ariesve,回编译替换framework.jar里面的classes.dex,再放到卡刷包的system/framework里面替换掉原来的framework.jar,即可修复下拉通知栏黑边!


BUG3:开启PIN锁之后数据按钮失灵和APN问题? ?
??找到CM10framework.jar/com/android/internal/telephony/Samsung*****.smalif" A这个文件夹的所有开头是Samsung*****的全部复制替换到MIUIframework.jar对应置替换好后MIUIframework.jar就可以回编译替换了


BUG4:com.android.phone无限报错
??找到CM10.1CM10原包的system\framework\telephony-common.jar,cm10反编译framework.jar)反编译,com\android\internal\telephony目录下,把所有带有Samsung*****.smali的文件全部替换到你的机型的包的对应位置,回编译替换即可


BUG5:无法挂载内置sd
??找到CM10原包的framework/framework-res.apk,反编译,找到res/xml/storage_list.xmlpower_profile.xml两个文件,替换到你的机型的对应位置,回编译你的机型的framework-res.apk。打开压缩文件管理器,把回编译生成的storage_list.xmlpower_profile.xml两个文件拖到原你的机型的framework-res.apk里,搞定了


BUG6:部分软件无法识别内部储存
??MIUI基于早期的CMMountService这个类不支持Incredible的内部存储,我们要替换成CMMountService代码,因为代码都已经编译了,所以,我们要先进行反编译。要用到baksmali工具,可以用我附件提供的工具包中的脚本。先用解压工具打开framework/services.jar,不用解压,直接将classes.dex拖到工具包的文件夹中再拖动classes.dex"解包dex.bat"上面,过一会儿,就会生成一个out文件夹将out文件夹重命名,随便啥名都可以,比如services.miui用解压工具打开我之前ROM里面services.jar,也用同样的方法解包dex同样将out文件夹重命名,比如services.cm打开services.cm/smali/com/android/server,在这个文件夹里面找到所有以MountService开头的文件,拷贝并替换services.miui里面相应的文件完成替换后,将services.miui拖动到"打包dex.bat"上面,会生成一个out.dex的文件将out.dex重命名成classes.dex,直接替换framework/services.jar里面的文件就可以了,不用重新签名这样,MountService的替换就完成了 一个问题需要说明一下,一定要用我的ROM里面的services.jar,不能用CM的。我基于CM的代码做了一点修改,解决内部存储挂载的时候主界面FC的问题,具体的改动,改天我再写一往篇来说明吧,其实,一共就改三行代码


Bug7解决漫游图标的问题
??这个问题比较好解决,用解压工具打开我的ROM里面的framework/framework-res.apk,找到res/xml/eri.xml文件,替换掉MIUI里面的就可以了。也不用重新签名。eri.xml文件是经过加密的。原文是:





复制代码

BUG8解决图库和音乐对内部存储的支持
? ?跟解决MountService的方法类似,要替换app/MediaProvider.apk里面的MediaScannerReceiverMediaScannerService开头的文件,这个可以用我或者是CM里面的替换都可以。更简单的方法,直接替换MediaProvider.apk文件也是可以的。因为最近这个apk好像都没有改动。


BUG9解决通话时对方听不到我方声音
??修复方法:反编译phone.apk,找到res\values\bools.xml文件,把第13行的true语句中的true改成false,如果时false就改为true(可以对比原包的文本内容)


BUG10手机要求激活
??--桌面上按菜单键->设置->无线和网络->移动网络->CDMA订阅->RUIM/SIM--长按关机键->启动飞行模式--长按关机键->关闭飞行模式--如有必要重启一次手机 -手机出现漫游标志--设置->无线和网络->移动网络->系统选择->仅本网--如有必要重复手机要求激活的步骤


BUG11通讯录fc
??这个只要替换libsqlite.solibsqlite_jni.so这两个文件到即可


BUG12手机短信音解决
??反编译phone.apk里面的classes.dex找到CallNotifier.smali搜索:.local v3, toneID:I在这个代码下面加入01. const/4 v7, 0x202. if-ne v7, v6, :cond_7a03. const/4 v7, 0x104. if-eq v7, v5, :cond_1305. .line 171106. :cond_7a复制代码然后回编译替换文件到原文件


BUG13 彩信不可接收
??MMSC里面写:http//mmsc.vent.mobi 彩信代理写:10.0.0.200 彩信端口选:80这就为ctnet设置了彩信代理,就可以使选择ctnet联网方式照常接收彩信

BUG14 数据网络不可用
??找到CM10.1CM10原包的system\framework\telephony-common.jar,(cm10反编译framework.jar)反编译出来 找到com\android\internal\telephony目录下替换gsmcdma文件夹
BUG。。。。。。。其他bug修复还有待更新!




上一篇:坚果3原厂线刷包彩票挂机高级倍投方案设置救砖,纯净无内置资料,亲测OK
下一篇:《安卓ROM开发入门到精通》--持续更新

0

主题

43

帖子

87

积分

提鞋小弟

Rank: 2

积分
87
沙发
发表于 2019-7-12 20:00:11 | 只看该作者
谢分享,谢谢!感谢分享,
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

微信公众号
微信扫码关注,
回复“领取金币”
每周抽取5位
会员奖励500金币

手机版|小黑屋|网站地图|宅科技 ( 粤ICP备15107403号 )?

GMT+8, 2019-9-23 14:15 , Processed in 0.844866 second(s), 24 queries .

Copyright ? 2016 宅科技 | 智能终端极客社区

Powered by Discuz! X3.4 Licensed

快速回复 返回顶部 返回列表