首页 > 解决方案 > apktool的缺点

问题描述

我有一个 apk,当我更改 apk 的签名而不使用 apksigner 对其进行拆卸时,我能够正确使用该应用程序。

但是,当我使用 apktool 使用命令对其进行反汇编时apktool d -s -r appname.apk,当我使用并签​​名它重建 apkapktool b directory时,应用程序崩溃说无法找到某些资源。下面是 adb logcat 中生成的日志

04-22 23:01:29.906 3025 8829 I ActivityManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.facebook.katana/.LoginActivity ( has extras)} from uid 10048 04-22 23:01:29.924 3025 3110 W WindowManager: Token{f3d9d4a ActivityRecord{5a3a2b5 u0 com.facebook.katana/.LoginActivity t1510}} 未能创建启动窗口 04-22 23:01:29.924 3025 3110 W WindowManager: > android.content.res.Resources$NotFoundException:可绘制 com.facebook.katana:drawable2/brand_launch_screen 资源 ID #0x7f1800e6 04-22 23:01:30.217 3025 4866 I ActivityManager: Start proc 23177:com.facebook.katana/u0a293 for activity com.facebook.katana/.LoginActivity 04- 22 23:01:30.552 23177 23177 W KatanaErrorReportingAppInit:在 com.facebook.katana.app.FacebookApplication.A09(:55) 04-22 23:01:30.690 23177 23177 W PackageManager:在包 com.facebook 中检索 xml 0x7f160020 失败。 katana 04-22 23:01:30.697 23177 23177 W PackageManager:在包 com.facebook.katana 04-22 23:01:30.698 23177 23177 E AndroidRuntime:进程:com.facebook.katana,PID:23177 04 中检索 xml 0x7f160021 失败-22 23:01:30.702 3025 5254 W ActivityManager:强制完成活动 com.facebook.katana/.LoginActivity 04-22 23:01:30.709 3025 3057 I ActivityManager:显示包 com 的崩溃对话框。facebook.katana u0 04-22 23:01:30.740 23177 23209 W FileBasedMultiProcessTracker: : 使用 /data/user/0/com.facebook.katana/app_multiprocess_tracking 初始化 FileBasedMultiProcessTracking 04-22 23:01:30.808 3251 3268 E RecentsTaskLoader: Unexpected null组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},null 04-22 23:01:30.811 3251 3268 E RecentsTaskLoader:意外的 null 组件名称或活动信息:ComponentInfo{com .facebook.katana/com.facebook.katana.activity.FbMainTabActivity},null 04-22 23:01:31.056 23177 23203 I dalvik-internals:integrateWithCrashLog crashlog:/data/user/0/com.facebook.katana/crash_log, insta_crashlog:/data/user/0/com.facebook.katana/insta_crash_log 04-22 23:01:31.088 23177 23201 W DexLibLoader:正在加载 /data/user/0/com.facebook。带有压缩 oreo 启动逻辑的 katana/dex 04-22 23:01:31.157 23177 23201 W zygote:执行失败(/system/bin/dex2oat --instruction-set=arm --instruction-set-features=div,atomic_ldrd_strd,armv8a --compiler-filter=verify-none --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m -j4 --instruction- set-variant=cortex-a53.a57 --instruction-set-features=default --dex-file=/data/data/com.facebook.katana/dex/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip --output-vdex-fd= 48 --oat-fd=36 --oat-location=/data/data/com.facebook.katana/dex/oat/arm/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.odex --compiler-filter=quicken --class-loader-context =&) 因为非 0 退出状态 04-22 23:01:31.205 3025 3056 W ActivityManager:ActivityRecord{5a3a2b5 u0 com.facebook.katana/ 的活动暂停超时。LoginActivity t1510 f} 04-22 23:01:31.323 3251 3554 E RecentsTaskLoader:意外的 null 组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},null 04-22 23: 01:31.327 3251 3554 E RecentsTaskLoader:意外的空组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},空 04-22 23:01:39.128 23177 23201 W DexLibLoader:已创建新配置文件:/data/user/0/com.facebook.katana/dex/oat/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip.cur.prof 04-22 23:01:41.213 3025 3056 W ActivityManager:ActivityRecord 的活动销毁超时{5a3a2b5 u0 com.facebook.katana/.LoginActivity t1510 f} 04-22 23:02:00.557 3025 5254 I ActivityManager: Killing 23177:com.facebook.katana/u0a293 (adj 900): crash323 3251 3554 E RecentsTaskLoader:意外的 null 组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},null 04-22 23:01:31.327 3251 3554 E RecentsTaskLoader:意外的 null 组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},null 04-22 23:01:39.128 23177 23201 W DexLibLoader:创建新的配置文件:/data/user/0/ com.facebook.katana/dex/oat/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip.cur.prof 04-22 23:01:41.213 3025 3056 W ActivityManager:ActivityRecord 的活动销毁超时{5a3a2b5 u0 com.facebook.katana/.LoginActivity } 04-22 23:02:00.557 3025 5254 I ActivityManager: Killing 23177:com.facebook.katana/u0a293 (adj 900): crash323 3251 3554 E RecentsTaskLoader:意外的 null 组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},null 04-22 23:01:31.327 3251 3554 E RecentsTaskLoader:意外的 null 组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},null 04-22 23:01:39.128 23177 23201 W DexLibLoader:创建新的配置文件:/data/user/0/ com.facebook.katana/dex/oat/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip.cur.prof 04-22 23:01:41.213 3025 3056 W ActivityManager:ActivityRecord 的活动销毁超时{5a3a2b5 u0 com.facebook.katana/.LoginActivity } 04-22 23:02:00.557 3025 5254 I ActivityManager: Killing 23177:com.facebook.katana/u0a293 (adj 900): crash意外的 null 组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},null 04-22 23:01:31.327 3251 3554 E RecentsTaskLoader:意外的 null 组件名称或活动信息:ComponentInfo {com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},空 04-22 23:01:39.128 23177 23201 W DexLibLoader:创建新的配置文件:/data/user/0/com.facebook.katana/ dex/oat/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip.cur.prof 04-22 23:01:41.213 3025 3056 W ActivityManager:ActivityRecord 的活动销毁超时{5a3a2b5 u0 com.facebook.katana/.LoginActivity t15210 f} 02:00.557 3025 5254 I ActivityManager: Killing 23177:com.facebook.katana/u0a293 (adj 900): crash意外的 null 组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},null 04-22 23:01:31.327 3251 3554 E RecentsTaskLoader:意外的 null 组件名称或活动信息:ComponentInfo {com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},空 04-22 23:01:39.128 23177 23201 W DexLibLoader:创建新的配置文件:/data/user/0/com.facebook.katana/ dex/oat/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip.cur.prof 04-22 23:01:41.213 3025 3056 W ActivityManager:ActivityRecord 的活动销毁超时{5a3a2b5 u0 com.facebook.katana/.LoginActivity t15210 f} 02:00.557 3025 5254 I ActivityManager: Killing 23177:com.facebook.katana/u0a293 (adj 900): crash01:31.327 3251 3554 E RecentsTaskLoader:意外的空组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},空 04-22 23:01:39.128 23177 23201 W DexLibLoader:已创建新配置文件:/data/user/0/com.facebook.katana/dex/oat/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip.cur.prof 04-22 23:01:41.213 3025 3056 W ActivityManager:ActivityRecord 的活动销毁超时{5a3a2b5 u0 com.facebook.katana/.LoginActivity t1510 f} 04-22 23:02:00.557 3025 5254 I ActivityManager: Killing 23177:com.facebook.katana/u0a293 (adj 900): crash01:31.327 3251 3554 E RecentsTaskLoader:意外的空组件名称或活动信息:ComponentInfo{com.facebook.katana/com.facebook.katana.activity.FbMainTabActivity},空 04-22 23:01:39.128 23177 23201 W DexLibLoader:已创建新配置文件:/data/user/0/com.facebook.katana/dex/oat/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip.cur.prof 04-22 23:01:41.213 3025 3056 W ActivityManager:ActivityRecord 的活动销毁超时{5a3a2b5 u0 com.facebook.katana/.LoginActivity t1510 f} 04-22 23:02:00.557 3025 5254 I ActivityManager: Killing 23177:com.facebook.katana/u0a293 (adj 900): crash/data/user/0/com.facebook.katana/dex/oat/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip.cur.prof 04-22 23:01:41.213 3025 3056 W ActivityManager:ActivityRecord 的活动销毁超时{5a3a2b5 u0 com.facebook .katana/.LoginActivity t1510 f} 04-22 23:02:00.557 3025 5254 I ActivityManager: Killing 23177:com.facebook.katana/u0a293 (adj 900): crash/data/user/0/com.facebook.katana/dex/oat/z-c3f717ac134eb2c18c7002a2df2a9900e6d7dd97.zip.cur.prof 04-22 23:01:41.213 3025 3056 W ActivityManager:ActivityRecord 的活动销毁超时{5a3a2b5 u0 com.facebook .katana/.LoginActivity t1510 f} 04-22 23:02:00.557 3025 5254 I ActivityManager: Killing 23177:com.facebook.katana/u0a293 (adj 900): crash

我想知道应用程序崩溃的原因,因为当我执行上述命令进行反汇编时,我没有干扰资源和 dex 文件,即我忽略了资源(.arsc)以及源( .dex) 文件。

那么,apktool 发生了什么变化,导致应用程序无法找到某些资源。

我可以知道 apktool 在构建 apk 时所做的更改的原因,例如对于某些应用程序,即使应用程序没有防篡改措施,它也会使应用程序崩溃。

标签: androidapkreverse-engineeringapktool

解决方案


推荐阅读