MIUI 9 欧洲版移植小米公交、支付等服务

2017-09-29 14:10:38 +08:00
 linusyang
原因:因同时需要使用 Android Pay,MIUI 官方版装 GApps 仍然通不过 SafetyNet 验证,且 Google Play 是未验证的状态,转而刷 xiaomi.eu 的固件(即欧洲版,俗称波兰版)。不过小米支付都被精简掉了,只能自己动手移植回来。

操作很简单:把俗称“卡刷包”的官方 OTA 完整固件 system.img 提取出来,然后 deodex 以后放在 /system/app 目录即可。需要提取的 apk 有三个,Mipay.apk 、TSMClient.apk 和 UPTsmService.apk 。前两个要 deodex,最后一个 apk 直接拷贝即可。

手机型号 MIX 2,已测试可以绑定银行卡和开通公交卡。提取和 deodex 推荐用 https://bitbucket.org/superr/superrs-kitchen 的一条龙服务。

补充 1:支付安全问题可以通过全盘加密保障 (FBE),这样进恢复模式也需要先解密。xiaomi.eu 的固件取消了 boot.img 里面的强制加密,直接刷机后默认是解密状态,且无法再次加密。

唯一的方法是恢复 boot.img 的强制加密,这样在刷完固件第一次启动的时候会自动加密 /data 分区。恢复的方法是把 boot.img 里面 fstab.qcom 里面 /data 条目的加密选项从 encryptable=ice 改为 fileencryption=ice,具体含义可参见官方 API 文档。
46527 次点击
所在节点    Android
188 条回复
bjzhou1990
2017-09-29 15:28:19 +08:00
OpenGApps 家的完整版 GApps 也不行吗
qqjt
2017-09-29 15:33:28 +08:00
666 赞一个
bianchensz
2017-09-29 16:23:13 +08:00
大概这就是大佬吧
baoanlol
2017-09-29 16:37:56 +08:00
刷欧洲版需要解 bootloader 和装第三方 recovery 么。。
chmlai
2017-09-29 16:40:30 +08:00
涉及支付这种功能不太敢用非官方的 rom 吧?
xianyuke
2017-09-29 16:40:48 +08:00
能否提供一下你已提取的那三个文件?
wuxiao2522
2017-09-29 16:41:08 +08:00
@baoanlol 同问
linusyang
2017-09-29 17:09:02 +08:00
#1 @bjzhou1990 我试了,不行的,看了 eu rom,是要改 build.prop 文件才能过认证。

#2,3 谢谢!只是分享一下心得。

#4,7 @baoanlol @wuxiao2522 是的,刷 eu rom 要解锁 BL 而且刷完不能锁上。恢复分区刷的是 twrp,xiaomi.eu 上提供的,实际上是国内开发者编译的,做了英文化而已 。

#5 @chmlai 确实有风险,用第三方固件都有这个问题,可以拿原版自己精简。我偷懒了,直接用现成的了。我觉得不 root 再加密应该还好,至少手机丢了还有一道保障。

#6 @xianyuke 不知分享出来是否有版权问题?而且不确定其他机型能否使用。用我推荐的工具提取很简单的,可以自己动手试试。
JenJieJu
2017-09-29 17:18:52 +08:00
@linusyang 有 eu 包的地址吗?我刷了后卡 mi 了。
linusyang
2017-09-29 18:27:38 +08:00
#9 @JenJieJu 需要在 twrp 里格式化 /data 分区 [1, 2],会删除所有用户数据(包括 /sdcard ),twrp 会提示输入 yes 后确认。原因是 MIUI 9 官方系统默认加密,xiaomi.eu 的固件在初次安装时不支持加密的 /data,格式化可去除加密。如果想保持系统加密可以参考“补充 1 ”里面的方法。

[1] https://xiaomi.eu/community/threads/other-roms-for-mi-mix-2.41649/#post-388044
[2] https://xiaomi.eu/community/threads/mi-mix-2-cleaner-crashes-when-opening-documents-security-app.41690/#post-388008
tSQghkfhTtQt9mtd
2017-09-29 21:18:54 +08:00
只是需要 Safetynet 的话可以通过刷入 Magisk 然后安装一个模块的方式解决。
imyip
2017-09-29 21:48:59 +08:00
所以一加 5 移植公交卡到非氢氧系统可行性呢
sol33
2017-09-29 21:52:34 +08:00
部分机型不支持电信 cdma 的问题呢?
mattx
2017-09-30 02:27:37 +08:00
你好,请问下,小米 5 有办法同时使用 google 框架和电信卡么?
ssdlh
2017-09-30 10:50:50 +08:00
@mattx 这两个一起有什么问题吗?正在用。
xx314327475
2017-09-30 13:24:38 +08:00
@linusyang 你好 我也是 mix2 刷的国际版 miui9 卡刷 提示不是官方 rom,请问您怎么解决的?

https://sourceforge.net/projects/xiaomi-eu-multilang-miui-roms/files/xiaomi.eu/MIUI-WEEKLY-RELEASES/7.9.22/
linusyang
2017-09-30 22:32:45 +08:00
#11 @liwanglin12 没错,Magisk 可以绕过 SafetyNet 检测,也可以修改 build.prop,是个不错的方案。不过默认会 root,模块会直接挂在到根目录,安全性会下降一些,我就没考虑使用了。

#12 @imyip 貌似不太行吧,NFC 公交卡是跟机型绑定的,不同小米手机支持的进度都不太一样,要分别测试。

#13,14 @sol33 @mattx 要支持 CDMA1x 通话应该可以在 4636 工程模式里面改 preferred network,网上教程挺多的,不过我没电信卡,没测试过。

#16 @xx314327475 只有官方包才能“卡刷”,即 OTA 升级,其他的 rom 都只能解锁 bootloader 在恢复模式里刷。小米手机现在刷 OTA 包不仅会验证包的签名,还需要服务器验证,有两重验证。
asipirin1120
2017-10-12 22:44:28 +08:00
给大佬倒一杯卡布奇诺
asipirin1120
2017-10-12 22:48:59 +08:00
嘛 公交卡提示要切换默认钱包 但是在 nfc 那块根本没有小米钱包的选项
asipirin1120
2017-10-12 23:20:10 +08:00
OK
切换到内置安全组件就能开公交卡了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/394591

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX