Daftar isi
Menandatangani APK berarti mencap paket dengan kunci kriptografi Anda agar Android dapat memverifikasi siapa pembuatnya dan memastikan tidak ada yang mengubahnya setelah itu. Gunakan apksigner dari SDK build tools, menu sign di MT Manager, atau langkah rebuild di APK Editor, lalu verifikasi sertifikat sebelum menginstal. Tandatangani hanya paket milik Anda atau yang Anda bangun ulang sendiri, dan jaga keystore seperti kata sandi.
Bagian dari pusat modding: Cara Memod APK · Berasal dari: Recompile APK · Verifikasi: Cek tanda tangan APK.
Oleh Abdul Emam, penguji APK di ApkZena. Saya pernah menandatangani tiga build uji dengan tiga kunci berbeda dalam satu sore, dan semuanya tidak mau saling menimpa pembaruan. Satu keystore per proyek, dicadangkan dua kali, mengakhiri kekacauan itu. Satu kunci. Dua cadangan.
Panduan ini membahas apa itu penandatanganan, empat skema tanda tangan, pembuatan keystore, tiga jalur penandatanganan, kesalahan yang akan Anda temui, dan verifikasi. Setiap perintah ditampilkan persis seperti diketik.
Apa itu Penandatanganan APK?
Penandatanganan APK menempelkan tanda tangan kriptografi yang dibuat dengan kunci penandatanganan, sehingga Android dapat memverifikasi integritas paket dan membandingkan identitas pembaruan; Android memeriksa tanda tangan itu selama instalasi dan pembaruan, dan menolak pembaruan yang ditandatangani dengan kunci yang tidak cocok untuk paket yang sama.
Mengapa Android Mewajibkannya
Tanpa tanda tangan, file kemasan ulang mana pun bisa diam-diam menggantikan aplikasi perbankan Anda saat pembaruan. Tanda tangan mengikat pembaruan pada penulis aslinya, dan inilah alasan build mod Anda tidak pernah bisa menimpa versi toko: kunci berbeda, identitas berbeda.
Penandatanganan Debug vs Rilis
Kunci debug dibuat otomatis per mesin untuk pengembangan dan tidak boleh keluar dari meja Anda. Kunci rilis berada di keystore Anda dan menentukan identitas aplikasi permanen selama bertahun-tahun pembaruan. Mencampurnya menghasilkan build yang terinstal baik-baik saja lalu menelantarkan pengguna Anda.
Skema Tanda Tangan APK
Penandatanganan APK Android mencakup skema v1, v2, v3, dan v4 dengan peran kompatibilitas dan pengiriman yang berbeda; mengetahui skema mana yang diterapkan alat build Anda membantu Anda memverifikasi persyaratan dukungan perangkat tanpa mengubah opsi penandatanganan secara tidak perlu untuk build lokal atau pengujian.
v1 (Penandatanganan JAR)
Menandatangani setiap entri ZIP satu per satu, skema Java asli yang diwarisi Android. Lambat diverifikasi pada paket besar dan buta terhadap sebagian perusakan level ZIP, tetapi masih diperlukan untuk perangkat sebelum Android 7. Pertahankan demi kompatibilitas maksimum.
v2 (Skema Tanda Tangan APK v2)
Menandatangani seluruh APK sebagai satu blok, diverifikasi dalam sekali jalan saat instalasi. Lebih cepat dan kuat daripada v1, wajib pada target modern, dan didokumentasikan dalam referensi Skema Tanda Tangan APK Google. Skema inilah yang melakukan pekerjaan sesungguhnya saat ini.
v3 (Rotasi Kunci)
Memperluas v2 dengan bukti garis keturunan kunci yang ditandatangani, sehingga pengembang dapat pindah ke kunci baru tanpa meninggalkan pengguna lama. Penting untuk aplikasi berumur panjang dan migrasi penandatanganan Play. Tidak relevan untuk build mod pribadi, pengetahuan wajib bagi pengembang.
v4 (Pengiriman Bertahap)
Mendukung instalasi streaming di mana verifikasi terjadi saat byte berdatangan bukan setelah unduhan penuh. Terikat pada mekanisme pengiriman yang lebih baru dan tidak terlihat dalam alur modding manual. Ketahui saja keberadaannya; Anda jarang memanggilnya langsung.
Skema Mana yang Dipakai
Kirim v1 plus v2 untuk build sideload: v1 mencakup perangkat kuno, v2 mencakup sisanya dan memikul beban keamanan. Tambah v3 hanya saat merencanakan rotasi kunci. apksigner mengaktifkan kombinasi yang tepat secara bawaan sesuai pengaturan SDK minimum Anda.
Cara Membuat Keystore
Perintah keytool membuat keystore dan identitas penandatanganan yang dipakai build mendatang; lindungi file maupun kata sandinya, karena kehilangan kunci dapat mencegah pembaruan paket yang bergantung padanya pada rilis dan instalasi perangkat pengguna berikutnya.
Perintah keytool
keytool -genkeypair -v -keystore my.keystore -alias mykey -keyalg RSA -keysize 2048 -validity 10000
Jawab pertanyaan dengan jujur, tetapkan kata sandi penyimpanan dan kunci yang kuat, dan pastikan file muncul. Dokumentasi app-signing SDK menjelaskan setiap flag beserta alasan di balik tiap pilihan.
Cadangkan Keystore
Salin file ke dua tempat independen sebelum menandatangani apa pun dengannya: drive USB terenkripsi dan arsip luring, misalnya. Keystore dengan satu salinan adalah keystore yang sudah setengah hilang, mengingat jarangnya orang menyentuhnya hingga hari bencana tiba.
Cara Menandatangani dengan apksigner
apksigner menandatangani APK, memverifikasi sertifikatnya, dan melaporkan skema tanda tangan yang didukung; ia disertakan dalam Android SDK build tools, menjadikannya opsi baris perintah pilihan untuk paket Android modern yang membutuhkan skema di atas v1 untuk instalasi pada perangkat Android terkini.
Tandatangani Paketnya
apksigner sign --ks my.keystore --out signed.apk unsigned.apk
Masukkan kata sandi keystore saat diminta. Flag --out menjaga input unsigned Anda, sehingga tersimpan pasangan sebelum-sesudah yang bersih untuk men-debug masalah tanda tangan nanti.
Verifikasi Tanda Tangannya
apksigner verify --print-certs signed.apk
Pastikan output menyebut sertifikat Anda dan mencantumkan skema yang diharapkan. Verifikasi memakan waktu hitungan detik dan menangkap kegagalan diam-diam, seperti build yang terinstal dari cache padahal penandatanganan sebenarnya gagal, yang merugikan waktu berjam-jam saat dilewati.
Cara Menandatangani dengan jarsigner
jarsigner adalah utilitas JDK yang menerapkan tanda tangan JAR v1 pada APK, terutama untuk alur lawas; ia tidak membuat skema tanda tangan APK yang lebih baru, jadi gunakan apksigner saat kompatibilitas perangkat Android modern diperlukan untuk instalasi dan pembaruan pada versi yang didukung.
Selaraskan, Lalu Tandatangani
zipalign -p 4 unsigned.apk aligned.apk
jarsigner -keystore my.keystore aligned.apk mykey
Perataan harus mendahului penandatanganan v1 karena ia menata ulang byte yang dicakup tanda tangan. Lalu verifikasi dengan jarsigner -verify -verbose -certs, dan utamakan apksigner untuk keputusan akhir soal skema modern.
Cara Menandatangani dengan MT Manager
MT Manager dapat menandatangani dari menu APK di ponsel: pilih file, pilih aksi sign, dan pakai kunci bawaan atau keystore yang dikonfigurasi; jaga kunci tetap konsisten jika build berikutnya harus memperbarui paket ini.
Kunci Bawaan vs Keystore Anda
Kunci bawaan cukup untuk eksperimen sekali pakai, tetapi build yang dimaksudkan saling memperbarui antar sesi membutuhkan keystore stabil milik Anda. Konfigurasikan sekali di pengaturan MT Manager, lalu setiap rebuild otomatis membawa identitas yang sama.
Cara Menandatangani dengan Android Studio
Wizard Generate Signed Bundle or APK di Android Studio dapat menandatangani build rilis setelah Anda memilih modul dan keystore; signingConfigs Gradle menangani pengaturan yang sama untuk build berulang saat Anda ingin prosesnya otomatis dari konfigurasi proyek dan pipeline CI.
Kapan Wizard Cocok
Pembuatan keystore pertama kali dan rilis sekali jalan terbantu oleh alur terpandu beserta validasi kata sandinya. Build modding berulang atau terskrip cocok dengan apksigner di baris perintah, di mana langkahnya terlihat dan terkontrol versi.
Kesalahan Umum Penandatanganan
Keystore hilang, tanda tangan pembaruan tidak cocok, ketidakcocokan verifikasi, dan output tanpa tanda adalah kegagalan penandatanganan yang umum; kenali pesan persisnya dulu, karena setiap pesan menunjuk ke kunci, file input, atau langkah alur berbeda yang perlu diselidiki sebelum membangun ulang paket untuk instalasi.
Keystore Tidak Ditemukan
Jalurnya salah, file berpindah, atau Anda salah ketik alias. Periksa ulang jalur dengan pengelola file, pastikan alias dengan keytool -list, dan simpan keystore di folder tetap agar ini tidak terulang.
INSTALL_FAILED_UPDATE_INCOMPATIBLE
Perangkat menyimpan paket yang sama dengan kunci berbeda. Hapus instalan aplikasi yang ada, terima hilangnya data lokal, dan instal build Anda dari awal. Tidak ada flag atau trik yang mengabaikan ini: inilah sistem tanda tangan yang bekerja sebagaimana dirancang.
Ketidakcocokan Tanda Tangan saat Verifikasi
apksigner verify gagal atau menampilkan sertifikat tak dikenal. Anda menandatangani dengan keystore yang salah, menandatangani file yang sudah ditandatangani dengan pengaturan bertentangan, atau keliru memverifikasi input unsigned. Tandatangani ulang file yang benar dengan kunci yang benar.
Paket Tanpa Tanda Ditolak
Penginstal menolak file sebelum logika tanda tangan berjalan. Langkah sign terlewati, biasanya karena alat membangun ulang tanpa pass penandatanganan aktif. Tandatangani manual dan verifikasi sebelum kembali ke penginstal.
Keystore Salah, Kata Sandi Benar
Penandatanganan berhasil tetapi verifikasi menampilkan sertifikat orang asing: Anda menunjuk ke keystore lama atau pinjaman. Build yang ditandatangani dengan kunci berbeda tidak pernah bisa saling menimpa pembaruan, jadi berhenti dan tandatangani ulang dengan kunci pemilik garis keturunan aplikasi terinstal sebelum melangkah lebih jauh.
Disiplin Keystore untuk Modder
Untuk proyek uji privat, simpan satu kunci bernama jelas per lini paket dan buat cadangan terpisah untuk setiap keystore; nama file bertanggal plus catatan APK mana memakai kunci mana memudahkan pembaruan berikutnya di seluruh perangkat dan build.
Namai Kunci Berdasarkan Proyek
game-mod-2026.keystore memberi tahu diri Anda di masa depan persis apa yang ditandatanganinya. Nama generik mengundang pemakaian ulang lintas build tak terkait, dan build tak terkait yang berbagi kunci mewarisi batasan pembaruan satu sama lain. Kejelasan sekarang mencegah penghapusan instalan nanti.
Cara Memverifikasi Tanda Tangan APK
Verifikasi memeriksa output yang ditandatangani secara independen sebelum instalasi, memastikan sertifikat dan skema sesuai harapan; gunakan panduan cek tanda tangan untuk membaca sidik jari dan membandingkannya dengan build resmi tepercaya untuk paket yang sama.
Buat satu keystore, cadangkan dua kali, dan tandatangani setiap rebuild dengan kunci yang sama. Saat build berikutnya menolak diinstal, panduan recompile dan pemecahan masalah instalasi di pilar modding melanjutkan dari sana.
Poin penting
- Tandatangani setiap build ulang dengan keystore milik Anda; Android tidak menginstal apa pun yang tidak ditandatangani.
- Kirim tanda tangan v1 plus v2, tambah v3 saat rotasi kunci penting, dan selalu verifikasi setelah menandatangani.
- Kehilangan keystore membuat identitas aplikasi yatim secara permanen, jadi cadangkan dua kali.
Pertanyaan umum
Bagaimana cara menandatangani APK?
Jalankan apksigner sign dengan keystore Anda terhadap paket tersebut, atau gunakan menu sign di MT Manager atau langkah rebuild di APK Editor. Lalu verifikasi sertifikat dengan apksigner verify sebelum menginstal. Paket yang tidak ditandatangani atau ditandatangani dengan salah selalu gagal saat instalasi.
Apa itu apksigner?
apksigner adalah alat penandatanganan baris perintah resmi Google, disertakan dalam Android SDK build tools. Ia menerapkan skema tanda tangan v1 hingga v4, memverifikasi tanda tangan yang ada, dan merotasi kunci di bawah v3. Utamakan ia daripada jarsigner untuk apa pun yang menargetkan versi Android modern.
Apa itu keystore?
Keystore adalah file terenkripsi yang menyimpan kunci penandatanganan privat Anda beserta sertifikatnya, dilindungi kata sandi yang Anda tetapkan saat pembuatan. Android memercayai kunci tersebut, bukan Anda, sehingga kehilangan keystore membuat setiap aplikasi yang ditandatanganinya yatim secara permanen. Cadangkan di dua tempat.
Apa itu tanda tangan v1, v2, v3, dan v4?
v1 menandatangani tiap entri ZIP satu per satu dengan cara JAR lama; v2 menandatangani seluruh APK agar verifikasi lebih cepat dan kuat; v3 menambah rotasi kunci untuk pemulihan kehilangan kunci; v4 mendukung pengiriman bertahap. Build modern membawa v1 plus v2, dengan v3 saat rotasi penting.
Apakah saya perlu zipalign sebelum menandatangani?
Ya untuk paket khusus v1: lakukan zipalign dulu, lalu tandatangani, karena perataan mengubah byte yang dicakup tanda tangan v1. Dengan v2 dan yang lebih baru, apksigner menangani perataan sendiri dan memberi peringatan saat harus menyesuaikan. Saat ragu, selaraskan dulu; urutan itu tidak pernah merugikan.
Bisakah saya menandatangani APK tanpa Android Studio?
Bisa. apksigner berjalan mandiri dari folder SDK build-tools tanpa IDE apa pun, dan MT Manager menandatangani langsung di ponsel. Android Studio hanya membungkus operasi yang sama dalam wizard. Penandatanganan baris perintah adalah hal lazim untuk alur modding.
Bagaimana cara memperbaiki ketidakcocokan tanda tangan?
Hapus instalan aplikasi yang membawa tanda tangan lain, lalu instal build Anda dari awal, terima bahwa data lokal ikut terhapus bersama penghapusan itu. Ketidakcocokan tidak bisa diperbaiki dengan trik tandatangan ulang: dua kunci berbeda tidak pernah bisa saling menimpa pembaruan menurut desain Android.
Apa perbedaan penandatanganan debug dan rilis?
Build debug memakai kunci otomatis yang dibuat setiap mesin pengembang, bagus untuk pengujian dan tidak pernah untuk distribusi. Build rilis memakai kunci keystore privat Anda, yang menentukan identitas permanen aplikasi. Jangan pernah merilis apa pun yang ditandatangani dengan kunci debug.
Bisakah saya memakai satu keystore untuk beberapa aplikasi?
Bisa. Seorang pengembang dapat memakai satu keystore untuk banyak aplikasi, meski kehilangan atau terbukanya keystore itu memengaruhi setiap paket yang bergantung pada kunci tersebut. Kunci terpisah dapat membatasi dampaknya. Apa pun pendekatan yang Anda pilih, cadangkan setiap keystore dan catat kunci mana yang menandatangani setiap paket.
Apa yang terjadi jika saya kehilangan keystore?
Anda kehilangan kemampuan menerbitkan pembaruan untuk setiap aplikasi yang ditandatanganinya, secara permanen, tanpa jalur pemulihan dari Google untuk paket sideload. Pengguna harus menghapus instalan lalu menginstal ulang di bawah kunci baru, kehilangan data lokal. Inilah alasan pencadangan keystore mengalahkan semua tindakan pencegahan lain.
Cara Memodifikasi APK (Game): Metode, Alat, dan Risiko (2026)