Welcome to the documentation page of APK Explorer & Editor (AEE), an open-source tool to explore and navigate through the contents of any installed APK file on an Android device.This page explains the basic usage of AEE in detail.
This page includes the following contents.
- User Interface
- APK Signing
- Signing with a custom key
User Interface
The main user interface of AEE is categorized into a number of pages, and are
1. Installed Apps
This page will by default load all the installed application on your device. AEE also allow offers a separate view of System and User apps. The following tasks are allowed on this page.
- Single click on an icon will load it in full screen. From the newly opened screen, it is also possible to save the same into device storage.
- Single click on any other part of an application will open the contents of the installed application in a File Manager and allows users to navigate through its contents.
- It is possible to Save/Export individual resource files such as fonts, graphics, binary XML files, etc to device storage.
- AEE even allow users to Delete or Replace original resource files of an APK.
- It is also possible to edit text/binary files using an in-built text editor. However, AEE binary text editor is very basic and a little buggy. As a result, text editing is disabled by default in the Settings menu of the app.
- Finally, AEE offers the generation of a signed (with AEE custom key) APK's/App Bundles after the above-mentioned modifications.
- Alternately, long clicking on an entry on the main screen will allow users to simply export (with or without signing with AEE custom key) APK's/App bundles into device storage.
2. Projects
This page lists all the applications (including the uninstalled ones) that are already explored from the first page, provided the user decided to retain the explored data upon asking (app will prompt when closing a project). This page also allows almost all the tasks that are available in the previous page. Additionally, long-clicking an item on this page will allow making a copy of the entire project folder of the selected app into device storage.
3. Extracted APK's
This page lists all the APK's/App bundles created on the first page. Various tasks that are allowed on this page are
- Install an exported APK/Split APK's by single clicking.
- Share an exported APK/Split APK's by long clicking.
- Delete an exported APK/Split APK's.
Additionally, this page is also equipped with a feature-rich APK/Split APK/App bundle installer. AEE Split APK installer handles normal APK's, split APK's as well as xapk, apks and apkm app bundles. In order to initialize an installation, simply click the installer button on the top to select the installation file(s) and follow onscreen instructions.
4. About
Shows very basic information about the development of this project. It includes links to visit the source code of AEE, Telegram support group etc.
5. Settings
The Settings menu of AEE is bundled with a number of options that are designed to ease the use of the app.
APK Signing
AEE will recognize APK files and app bundles and sign them accordingly with its default key. In order to sign an APK using a custom Keystore, some specific methods need to be followed and are explained in the next section.
Signing with a custom key
In order to sign APK's with a custom key, AEE requires a private key in pk8 format as well as an X509Certificate exported from the same key.
How to create private key
- Convert a java keystore (JKS) to PKCS12 format
keytool -importkeystore -srckeystore KEYSTORE_PATH -destkeystore intermediate.p12 -srcstoretype JKS -deststoretype PKCS12
- Convert a PKCS12 to pem format
openssl pkcs12 -in intermediate.p12 -nodes -out intermediate.rsa.pem
- Finally convert pem to pk8 format
openssl pkcs8 -topk8 -outform DER -in intermediate.rsa.pem -inform PEM -out private.pk8 -nocrypt
How to create X509Certificate
- Read X509Certificate from a java keystore (JKS)
keytool -list -rfc -keystore KEYSTORE_PATH -alias KEY_ALIAS -storepass STORE_PASSWORD
- From the output, copy the text starting from -----BEGIN CERTIFICATE----- to -----END CERTIFICATE----- (including both) and save it as a text file
Configure AEE to work with custom key
Open AEE and Navigate to Settings -> Sign APK's with and select Custom Key. A new page will now open which allows users to select a custom Private Key and X509Certificate. Use it! By doing so, AEE will do the following changes, and now onwards uses the new credentials for signing.
- Save private key as
/data/data/com.apk.editor/files/signing/APKEditor.pk8
- Save X509Certificate as
/data/data/com.apk.editor/files/signing/APKEditorCert
Please Note: A link to open this page is available in the About section of this app. Also, always check out the "How To" section of the official web page (https://apk-editor.github.io/) for the latest documentation.