Skip to content

Solusi Ngoding E-KTP Reader Tanpa Dokumentasi Library

Reading Time: 2 minutes

Pada tanggal 8 April 2020 saya mendapat pesan WA dari seseorang yang tidak saya kenal. Setelah ngobrol, intinya dia adalah programmer di salah satu rumah sakit di Jawa Tengah dan ingin diskusi mengenai kodingan E-KTP Reader.

Setelah diskusi, permasalahan utama yang dia hadapi adalah dia tidak punya dokumentasi library dari vendornya. Saya tidak faham kenapa vendornya tidak memberikan dokumentasinya. Padahal biasanya, SDK itu selalu disertai dengan dokumentasinya.

Solusi awal yang saya sarankan tentu meminta dokumentasi ke vendornya, tapi kemudian, intinya sampai kami menemukan solusi sendiri dan sampai tulisan ini dibuat pun dia belum mendapatkan dokumentasinya.

Kemudian kami beralih ke solusi kedua, yaitu mencoba melihat method-method apa saja yang ada di SDK dan mengira-ngira method apa saja yang digunakan untuk bisa mengambil data dari E-KTP. Awalnya, saya berpikir akan cukup mudah, tetapi kemudian kami mengalami error ketika membuat objek dari kelas EktpReader. Kelas ini merupakan kelas utama di dalam SDK KTP Reader.

Untuk mengatasi masalah tidak bisa membuat objek dari kelas EktpReader, saya menemukan sebuah solusi. Solusi ini saya dapat setelah menganalisa erronya dan melakukan decompile pada pada SDKnya. Intinya, errornya adalah kita tidak bisa membuat sebuah objek dari kelas yang constructornya diberi modifier private. Solusi pertama adalah menggunakan reflection untuk membuat instance dari kelas tersebut. Solusi yang kedua adalah dengan membuat constructor yang modifiernya public dari source code SDK hasil decompile. Kami sempat mencoba kedua solusi tersebut, tetapi kodingannya sepertinya tidak semudah yang dipikirkan karena kami benar-benar tidak tahu method-method mana saja yang harus dipakai dan bagaimana cara memakainya untuk bisa membaca data dari E-KTP.

Solusi terakhir yang terpikir di pikiran saya adalah untuk melakukan decompile pada aplikasi bawaan E-KTP Reader untuk melihat method-method apa saja yang dipakai dan bagaimana cara menggunakannya. Ketika mau mengambil solusi ini, saya sudah yakin tidak akan bisa melakukan reverse dengan sempurna. Dan hal ini terbukti, perlu ada beberapa rekonstruksi agar source code bisa running dengan sempurna. Tetapi, Alhamdulillah saya berhasil melakukan rekonstruksi source code hasil decompile tersebut. Dari sini, seharusnya tinggal nyontek saja bagaimana cara membaca data dari E-KTP readernya.

Untuk teman-teman yang mengalami kesulitan seperti teman saya ini, bisa menghubungi saya untuk diskusi mengenai cara menggunakan SDK dari EktpReader, siapa tahu dari vendor yang sama.

Bagikan artikel

Published inPemrogramanPengalaman

Be First to Comment

    Tinggalkan Balasan

    WhatsApp chat