如何判断APK是debug版本还是release版本

有两种方法。

方法一:adb shell命令

$ adb shell dumpsys package xx.xx.xx | findstr flags

xx.xx.xx为apk的package name。package name 可由下面命令得到:

$ adb shell pm list packages |findstr xxx

xxx为APK的关键字

结果分析:

命令执行成功时,返回flags:

flags=[ DEBUGGABLE HAS_CODE ALLOW_CLEAR_USER_DATA ALLOW_BACKUP LARGE_HEAP ]
代表该APK为debug版本

flags=[ HAS_CODE ALLOW_CLEAR_USER_DATA ALLOW_BACKUP LARGE_HEAP ]
代表该APK为release版本

方法二:aapt命令

$ aapt dump badging /path/to/apk | grep -c application-debuggable

若无aapt命令,则需要如下命令来安装:

$ sudo apt-get install aapt

结果分析:

若aapt的命令结果为0,则为release版本

若结果为1,则为debug版本,代表APK是debuggable的

 

参考连接:

1. https://www.jianshu.com/p/e36efdfab47f

2. https://stackoverflow.com/questions/7085644/how-to-check-if-apk-is-signed-or-debug-build

posted @ 2023-08-16 10:20  青山牧云人  阅读(1948)  评论(0编辑  收藏  举报