Open ythy opened 6 years ago
apktool if framework-res.apk -t samsung -p xxx
apktool if twframework-res.apk -t samsung -p xxx
应用apktool d 1234.apk -t samsung
生成的文件打包会报资源错误. 正确方式:
apktool d 1234.apk -t samsung -r -p xxx
这里 -r
is to ignore the decompiling of resources. 然后:
apktool b 1234 -t samsung -p xxx
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore xx.jks 1234.apk xx(alias)
签名, jarsigner
是java自带命令jarsigner -verify -certs -verbose app.apk
修改三星健康StepData.smali文件
smali_classes4\com\samsung\android\app\shealth\tracker\pedometer\service\data\StepData.smali
.line71修改为
.line 71
invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
move-result v0
add-int/lit16 v0, v0, 0x5000
iput v0, p0, Lcom/samsung/android/app/shealth/tracker/pedometer/service/data/StepData;->mStepCount:I
代码作用: 读步数数据StepCount
时 增加0x5000
的步数
结果:安装到手机, 三星健康默认步数显示为20000步以上,正确。 但是支付宝不能开启同步三星健康数据。报错消息为:
07-03 14:43:42.233 4380-4380/? I/chromium: [INFO:CONSOLE(9)] "
Uncaught ReferenceError: config is not defined", source: https://20000869.h5app.alipay.com/www/static/js/healthstep.js (9)
至此,失败。确认是因为自签名和三星不一致的问题。
查看 jks 文件信息
keytool -v -list -keystore mx.jks
reference
反编译三星健康
需要三星机器
system/framework
下的2个文件framework-res.apk
和twframework-res.apk
;准备framework
会在
C:\Users\imc.imc-PC\AppData\Local\Temp
下生成2个文件1-samsung.apk
和2-samsung.apk
开始反编译
会自动加载
1-samsung.apk
和2-samsung.apk
进行编译