Catatan Lapangan ⑥: Menghidupkan kembali aplikasi Android yang mandek dengan AI

Studi kasus penerapan AI

“Aplikasinya jalan. Hanya notifikasinya yang sudah bertahun-tahun tidak sampai.” Begitulah permintaan itu dimulai. Sebuah aplikasi Android untuk layanan B2C berbasis keanggotaan. Aplikasi itu ada di toko dan bisa dibuka, tetapi notifikasi push entah sejak kapan tidak pernah terkirim satu pun. Kali ini kami mengambil sebuah “aplikasi seluler yang tak tersentuh” — tanpa pembuat aslinya, tanpa dokumen — dan mewarisi seluruh aset anggota beserta kunci penandatanganan tanpa terkecuali, lalu membangunnya ulang dengan AI. Inilah catatannya.

Warisan yang paling menakutkan bukanlah aplikasi yang jatuh.
Melainkan aplikasi yang tidak pernah jatuh, tetapi fungsi pentingnya diam-diam berhenti.

Di balik “masih jalan kok”, notifikasi sudah mati sejak beberapa tahun lalu.

Wujud sebenarnya aplikasi ini adalah cangkang native yang menampilkan layanan web yang sudah ada — sebuah pembungkus WebView ditambah notifikasi push. Layarnya memakai ulang aset web yang ada sehingga tetap hidup. Masalahnya ada pada notifikasi: mekanisme pengirimannya bergantung pada platform pengiriman generasi lama, dan begitu platform itu dihentikan, jalurnya sendiri lenyap. Di basis data hanya ditambahkan kolom untuk menyimpan token skema baru, tetapi tidak pernah ada yang ditulis ke sana — kabelnya dibiarkan putus di tengah jalan.

sekitar 14.000perangkat terdaftar (keseluruhan)
sekitar 3.200perangkat Android
2016tahun penerbitan kunci penandatanganan yang ada
1 kaliperilisan ulang yang diperlukan

Delapan puluh persen dari “tak tersentuh” sebenarnya adalah rasa takut membangun ulang.

Tembok yang benar-benar kami hadapi bukan sulitnya kode, melainkan rasa takut mewarisi. Khususnya di Android, satu langkah salah membuatnya menjadi aplikasi lain yang tidak bisa diperbarui oleh pengguna lama.

Platform pengiriman notifikasi lenyap bersama generasinyaJalur komunikasiLayanan pengiriman generasi lama sudah ditutup, sehingga jalur di sisi pengirim tidak ada. Kami harus mulai dengan memindahkannya ke “jalur modern”.
Tidak ada pembuatnya, tidak ada dokumen desainnyaAplikasiYang tersisa hanya kode sumber lama. Agen AI membaca strukturnya, kami memahami kerangkanya — cangkang + WebView + notifikasi — lalu merancang ulang. Bukan dari nol, melainkan memahami wujud nyatanya lalu membangunnya ulang — begitulah cara kerjanya.
Tanpa mewarisi kunci penandatanganan, seluruh pengguna tidak bisa memperbaruiAplikasiDi Android, hanya berkas yang ditandatangani dengan kunci penandatanganan yang sama yang sampai sebagai “pembaruan”. Kami menemukan kunci terbitan 2016, sekitar sepuluh tahun lalu, mewarisinya, dan memastikan sidik jari sertifikatnya cocok sepenuhnya — sehingga distribusi berjalan sebagai pembaruan, bukan pemasangan baru.
API pendaftaran mewajibkan komunikasi terenkripsiJalur komunikasiServer lama dikonfigurasi menolak koneksi teks polos, dan di sinilah letak sebagian besar kegagalan pendaftaran perangkat. Alih-alih menonaktifkan verifikasi untuk mengakalinya, kami menyeragamkan sisi aplikasi dengan asumsi komunikasi terenkripsi.
Lingkungan build tidak mengikuti persyaratan toko saat iniAplikasiToko tidak menerima lingkungan eksekusi lama. Kami menaikkan fondasi build (alat build, bahasa, lingkungan eksekusi) ke versi terbaru sampai bisa menghasilkan paket distribusi yang sudah ditandatangani.

Kami memisahkan dengan tegas apa yang dipertahankan dan apa yang dibangun ulang.

Yang perlu dilakukan bukanlah “membuat semuanya baru”. Aset yang masih berguna dipakai apa adanya. Kalau diuraikan, hasilnya seperti ini.

ItemSebelumnyaSetelah dibangun ulang
Jalur notifikasiplatform pengiriman generasi lama
(dihentikan – tidak bisa mengirim)
Dipindahkan ke platform pengiriman saat ini (FCM)
Cangkang aplikasiImplementasi native generasi lamaDibuat ulang dengan implementasi native terbaru
Layar (isi)Menampilkan layanan web yang sudah adaBerlanjut apa adanya (aset anggota dipertahankan)
Kunci penandatangananDiterbitkan tahun 2016Kunci yang sama diwarisi (didistribusikan sebagai pembaruan)
Data anggota dan perangkatSekitar 14.000 perangkat sudah terdaftarDiwarisi apa adanya

Pembangunan ulangnya sendiri dijalankan sekaligus oleh agen AI. Aplikasi hasil bangun ulang dijalankan di perangkat virtual melalui rangkaian mengambil token notifikasi → mendaftarkannya ke server → notifikasi benar-benar sampai hingga tuntas, dan kami memastikan perjalanan bolak-baliknya berhasil. Keluarannya adalah paket bertanda tangan yang siap didistribusikan.

Rancang “pembangunan ulang” dan “perilisan ulang” sekecil mungkin.Pemulihan notifikasi sebenarnya kami siapkan agar bisa dinyalakan hanya dengan pemindahan di sisi server. Aplikasi cukup dirilis ulang satu kali, dan setelah itu notifikasi bisa dikembalikan ke operasi tanpa menyentuh perangkat mana pun — “tidak berulang kali meminta pengguna memperbarui” makin terasa manfaatnya pada layanan dengan anggota yang banyak.

Sebagian besar aplikasi yang disebut mati bukanlah kerugian total. Selama Anda mengamankan beberapa kabel yang putus dan kunci yang harus diwarisi, wujud nyatanya bisa dikembalikan ke fondasi modern tanpa dibuang. Pada bagian iOS (Catatan Lapangan ⑦) kami menulis tentang platform satunya, tempat sebagian besar anggota berada, serta kisah yang sama untuk kedua sistem operasi: memodernkan notifikasi tanpa mengganti server lama.

* Artikel ini digeneralisasi dari proyek nyata sejauh perusahaan maupun layanannya tidak dapat diidentifikasi. Angka-angkanya adalah perkiraan berdasarkan pengukuran per Agustus 2026. Durasi dan lingkup pekerjaan berbeda-beda menurut struktur aplikasi.

Tag:

🌐 Bahasa Indonesia