copy/extract/patch apk signatures
Project description
apksigcopier - copy/extract/patch apk signatures
Extract:
$ mkdir meta
$ apksigcopier extract signed.apk meta
$ ls -1 meta
8BEA2A77.RSA
8BEA2A77.SF
APKSigningBlock
APKSigningBlockOffset
MANIFEST.MF
Patch:
$ apksigcopier patch meta unsigned.apk out.apk
Copy (Extract & Patch):
$ apksigcopier copy signed.apk unsigned.apk out.apk
CAVEATS
Recent versions of the Android gradle plugin will use zipflinger --
which arranges the contents of the APK differently -- making
apksigcopier fail to work. You can tell the plugin not to use
zipflinger by setting android.useNewApkCreator=false
in
gradle.properties
.
Help
$ apksigcopier --help
Tab Completion
For Bash, add this to ~/.bashrc
:
eval "$(_SHTST_COMPLETE=source_bash apksigcopier)"
For Zsh, add this to ~/.zshrc
:
eval "$(_SHTST_COMPLETE=source_zsh apksigcopier)"
For Fish, add this to ~/.config/fish/completions/apksigcopier.fish
:
eval (env _SHTST_COMPLETE=source_fish apksigcopier)
Requirements
- Python >= 3.5 + click +
apksigner
+zip
.
Debian/Ubuntu
$ apt install python3-click apksigner zip
Installing
Using pip
$ pip install apksigcopier
NB: depending on your system you may need to use e.g. pip3 --user
instead of just pip
.
From git
NB: this installs the latest development version, not the latest release.
$ git clone https://github.com/obfusk/apksigcopier.git
$ cd apksigcopier
$ pip install -e .
NB: you may need to add e.g. ~/.local/bin
to your $PATH
in order
to run apksigcopier
.
To update to the latest development version:
$ cd apksigcopier
$ git pull --rebase
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for apksigcopier-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 46ef37b90595d746250ebd4d29a7bfffc2d49cfdf036798036b2e01fba2fb85f |
|
MD5 | dd3e41b56ba2ca966a5bd8fdabe9627a |
|
BLAKE2b-256 | 0ac86031fdb42f86eaa493c83569362d30b3a5cfd1952e2b4789509d6ca0da34 |