adb), Android SDK Build-Tools (apksigner, aapt), a SHA-256 utility, and access to GitHub.kanaaka/wordcraft-android, verify its signature and ABI, install it, and confirm the package is running on the device.
adb) and Build-Tools (apksigner, aapt) installed on the computer.Checklist before you start:
adb devices lists your device as device, not unauthorizedadb shell getprop ro.product.cpu.abi returns arm64-v8aapksigner and aapt are available in your terminalExample: connect the phone, run adb devices, and expect:
List of devices attached
R58M1234567 device
If you see unauthorized, unlock the phone and accept the USB debugging prompt.

What to do: open the GitHub repository kanaaka/wordcraft-android at https://github.com/kanaaka/wordcraft-android. Read the README and repository notes. Download the APK file distributed in the repository. The source post says the APK is in the repository but does not name a release tag or asset filename, so use the file you find there and record its exact name, for example <apk-name>.apk.
Why: the source post describes this as a third-party, non-official build. It is not an official WordCraft release. Downloading from the named repository is the only distribution path confirmed in the post.
How to check: clone the repository and inspect its top-level contents:
git clone https://github.com/kanaaka/wordcraft-android.git
cd wordcraft-android
find . -maxdepth 2 -type f | sort
Expected: repository files including the shell crate, the patch to the upstream project, migration notes, and build scripts. The post names these components but not their exact filenames. If you prefer not to trust the APK, review the patch and build scripts and build locally; the post does not list build commands.
Example: after cloning, list the files and confirm you see the APK you downloaded plus the repository notes. If you are new to installing from GitHub, the general flow is the same as in Sideraven: install from GitHub and migrate your bookmarks.

What to do: compute the APK hash, inspect the signing certificate, check the native ABI, and record the package name.
Why: this is an unofficial APK. A hash and signature check tell you whether the file changed after download and whether it is signed at all. The ABI check tells you whether the port can run on your phone.
How to check: run these commands from the folder containing the APK.
SHA-256 on Linux/macOS:
sha256sum <apk-name>.apk
SHA-256 on Windows PowerShell:
Get-FileHash .\<apk-name>.apk -Algorithm SHA256
Expected: a 64-character hexadecimal hash. Compare it with any checksum published in the repository. The source post does not list a checksum; if the repository has none, record the hash and treat the file as unverified.
Signature check:
apksigner verify --verbose --print-certs <apk-name>.apk
Expected output begins with:
Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true
If the certificate DN contains CN=Android Debug, the APK is signed with a debug certificate. That proves the file is signed, not that it is safe.
ABI check:
unzip -l <apk-name>.apk | grep -E 'lib/.*/lib.*\.so'
Expected: paths under lib/arm64-v8a/. If you see only lib/armeabi-v7a/ or lib/x86/, this is not the arm64-v8a build named in the post.
Package check:
aapt dump badging <apk-name>.apk | head
Expected: a package: name='...' line and, if present, native-code: 'arm64-v8a'. Record the package name; you will use it in Step 3.
Example: a passing check looks like this:
package: name='com.example.wordcraft' versionCode='1' versionName='1.0'
native-code: 'arm64-v8a'
The package name above is only a placeholder. Use the value printed on your screen.
Before installing, confirm:
apksigner verify returned Verifieslib/arm64-v8a/What to do: enable “Install unknown apps” on the device, then install with ADB or by tapping the APK.
Why: the APK is not distributed through Google Play in the source post. Android requires explicit permission for sideloaded APKs, and the port only targets arm64-v8a.
How to check: first confirm the device ABI:
adb shell getprop ro.product.cpu.abi
Expected: arm64-v8a. If it returns armeabi-v7a or x86, stop; this port will not install.
Install with ADB:
adb install -r <apk-name>.apk
Expected final line:
Success
Confirm the package is installed:
adb shell pm list packages | grep <package-name>
Expected: package:<package-name>.
Confirm the ABI selected by Android:
adb shell dumpsys package <package-name> | grep primaryCpuAbi
Expected:
primaryCpuAbi=arm64-v8a
Launch the app:
adb shell monkey -p <package-name> -c android.intent.category.LAUNCHER 1
Expected: the app opens on the device and the command ends without an error.
Manual install path: Settings → Apps → Special app access → Install unknown apps → select your browser or file manager → Allow. Then open the APK from the file manager and confirm the install prompt.
Example: if your package is com.example.wordcraft, the check command is:
adb shell dumpsys package com.example.wordcraft | grep primaryCpuAbi
A successful result shows primaryCpuAbi=arm64-v8a.
Problem. Installation fails with an ABI error
Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]adb shell getprop ro.product.cpu.abi. If it is not arm64-v8a, this build cannot run on that device. If it is arm64-v8a, re-check the APK with unzip -l <apk-name>.apk | grep lib/arm64-v8a and re-download the correct file from the repository.Problem. The signature check does not pass
DOES NOT VERIFYkanaaka/wordcraft-android, compare the SHA-256 hash, and run apksigner verify --verbose --print-certs <apk-name>.apk again. If it still fails, ask the repository maintainer for a signed build.Problem. ADB install is blocked by the device verifier
adb: failed to install <apk-name>.apk: Failure [INSTALL_FAILED_VERIFICATION_FAILURE]adb shell settings put global verifier_verify_adb_installs 0
adb shell settings put global package_verifier_enable 0
adb install -r <apk-name>.apk
After testing, restore the settings to 1. If the install is delayed for 24 hours, the device is covered by Google’s new sideloading restriction named in the source post; wait for the timer and retry.
You have downloaded the unofficial WordCraft Android port from kanaaka/wordcraft-android, verified its signature and arm64-v8a ABI, and installed it with ADB or the system installer. Next, keep the recorded SHA-256 hash and package name so you can detect changes on future updates, and review more Android app options in Best AI apps for Android in 2026.
Is this an official WordCraft APK?
No. The source post describes kanaaka/wordcraft-android as an unofficial Android port and a third-party build, not an official release.
Which CPU architecture does the port support?
The post names arm64-v8a only. Check your device with adb shell getprop ro.product.cpu.abi before downloading.
Where do I download the APK?
From the GitHub repository kanaaka/wordcraft-android. The post says the APK is distributed in the repository and does not name a release tag or asset filename.
Why is installation delayed for 24 hours?
Google’s new sideloading restriction is active in Brazil, Indonesia, Singapore, and Thailand and is expanding. Even after you allow unknown sources, the system can make you wait 24 hours and still shows a warning.