hsiafan/apk-parser

Bug: Some APKs can't get their names

Opened this issue · 0 comments

I've tried recently to go over all apps that are installed on the device, and get their names using this library.

I've found many that the library fail to parse, because it thinks the app name is null. Here's the list:

/system/priv-app/CtsShimPrivPrebuilt/CtsShimPrivPrebuilt.apk : java.lang.IllegalStateException: appName must not be null
/product/overlay/PixelConfigOverlay2017.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/CNEService/CNEService.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/DocumentsUI/DocumentsUI.apk : net.dongliu.apk.parser.exception.ParserException: Unexpected chunk Type: 0x204
/system/priv-app/OBDM_Permissions/OBDM_Permissions.apk : java.lang.IllegalStateException: appName must not be null
/vendor/app/QtiTelephonyService/QtiTelephonyService.apk : java.lang.IllegalStateException: appName must not be null
/product/overlay/GoogleWebViewOverlay.apk : java.lang.IllegalStateException: appName must not be null
/system/app/datastatusnotification/datastatusnotification.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/ONS/ONS.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/BackupRestoreConfirmation/BackupRestoreConfirmation.apk : java.lang.IllegalStateException: appName must not be null
/system/app/ims/ims.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/GooglePermissionController/GooglePermissionController.apk : net.dongliu.apk.parser.exception.ParserException: Unexpected chunk Type: 0x204
/product/overlay/PixelDocumentsUIOverlay/PixelDocumentsUIOverlay.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/qcrilmsgtunnel/qcrilmsgtunnel.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/SharedStorageBackup/SharedStorageBackup.apk : java.lang.IllegalStateException: appName must not be null
/system/product/priv-app/DiagMon/DiagMon.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/NetworkStack/NetworkStack.apk : net.dongliu.apk.parser.exception.ParserException: Unexpected chunk Type: 0x204
/product/overlay/GoogleConfigOverlay.apk : java.lang.IllegalStateException: appName must not be null
/system/app/RcsService/RcsService.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/LocalTransport/LocalTransport.apk : java.lang.IllegalStateException: appName must not be null
/system/product/app/SSRestartDetector/SSRestartDetector.apk : java.lang.IllegalStateException: appName must not be null
/system/product/priv-app/DCMO/DCMO.apk : java.lang.IllegalStateException: appName must not be null
/system/app/PartnerBookmarksProvider/PartnerBookmarksProvider.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/NetworkPermissionConfig/NetworkPermissionConfig.apk : java.lang.IllegalStateException: appName must not be null
/product/overlay/PixelConfigOverlayCommon.apk : java.lang.IllegalStateException: appName must not be null
/system/app/CtsShimPrebuilt/CtsShimPrebuilt.apk : java.lang.IllegalStateException: appName must not be null
/system/app/WallpaperBackup/WallpaperBackup.apk : java.lang.IllegalStateException: appName must not be null
/system/product/priv-app/HardwareInfo/HardwareInfo.apk : java.lang.IllegalStateException: appName must not be null
/system/product/app/TimeZoneDataPrebuilt/TimeZoneDataPrebuilt.apk : java.lang.IllegalStateException: appName must not be null
/product/overlay/framework-res__auto_generated_rro_product.apk : java.lang.IllegalStateException: appName must not be null
/vendor/app/TimeService/TimeService.apk : java.lang.IllegalStateException: appName must not be null
/system/app/embms/embms.apk : java.lang.IllegalStateException: appName must not be null
/system/product/priv-app/ConnMetrics/ConnMetrics.apk : java.lang.IllegalStateException: appName must not be null
/system/priv-app/LLKAgent/LLKAgent.apk : java.lang.IllegalStateException: appName must not be null
/vendor/overlay/framework-res__auto_generated_rro_vendor.apk : java.lang.IllegalStateException: appName must not be null

I think that in all of these cases, the Android framework just returns the packageName as the app-name.

Attached here a sample project.
MyApplication.zip