Bagaimana saya membuat aplikasi pengenalan teks Android yang menguntungkan

Halo semuanya. Dalam artikel sebelumnya, saya berbicara tentang cara mendapatkan $ 100 pertama saya di Google Play Market. Pada artikel ini saya akan berbicara lebih banyak tentang pengembangan dan manajemen proyek.

Subjek dari artikel ini adalah aplikasi pengenalan teks Android, yang 4 bulan di pasar dan memiliki hampir 10.000 pemasangan, dimonetisasi melalui langganan berbayar, pembelian dalam aplikasi, dan iklan.

Aplikasi ini dapat mengenali teks (Google Vision OCR API), menerjemahkan yang diakui (Bing Translate API), menghasilkan PDF yang dapat dicari, menyimpan sejarah di Cloud.

Sedikit tentang pengakuan, pilihan API


Gagasan untuk membuat aplikasi pengenalan teks Android Anda muncul sejak lama. Topik dipilih secara kebetulan. Saya ingin menyiapkan aplikasi OCR, karena saya sudah memiliki fungsionalitas OCR siap pakai berdasarkan Tesseract. Sebelumnya di Habré saya menulis cara membuat aplikasi OCR sederhana berdasarkan Tesseract . Pada saat itu, bagi saya tampaknya pekerjaan itu hampir selesai, bahwa Anda hanya perlu dengan cepat memutar wajah yang cantik - dan menjadi pekerja! Oh betapa salahnya aku.

Dalam prosesnya, menjadi jelas bahwa melakukan OCR pada perangkat android adalah ide yang buruk, kinerja perangkat rendah, dan Anda harus menunggu lama untuk hasilnya. Selain itu, modul Tesseract OCR membutuhkan banyak ruang disk (17 MB), dan ini hanya versi Ringan dengan kamus bahasa Inggris minimum. Saya memutuskan untuk membuat bagian backend, dan mengeluarkan modul OCR di sana. Kualitas pengenalan meningkat sebesar 20-30% karena fakta bahwa kamus telah menjadi lebih lengkap, serta kesempatan untuk menggunakan versi Tesseract yang lebih segar (pembungkus Java untuk Tesseract diperbarui lebih sering daripada pembungkus Android).

Namun demikian, kualitas pengenalannya adalah open-source :), seperti yang diharapkan dari perpustakaan open-source. Kemudian seorang kenalan acak dengan GitHub menyarankan saya untuk menguji Google Vision OCR API. Perpustakaan tidak gratis, tetapi saya punya kemauan psikologis untuk membayar API. Google Vision memberikan hasil yang jauh lebih akurat dan inilah yang saya gunakan saat ini. Dalam sebulan saya membayar sekitar $ 20 untuk hanya menggunakan API ini.

Google menawarkan perpustakaan yang baik untuk terjemahan teks, tetapi bagi saya tampaknya mahal - terjemahan menarik 2-3 kali lebih banyak daripada pengakuan, dan untuk menghemat uang, saya beralih ke Bing Translate API dari Microsoft. Kualitasnya belum turun, tetapi dalam iklan saya tidak bisa meneriakkan lebih dari 100 bahasa untuk terjemahan, hanya ada 64 bahasa saja. Tidak ada API gratis yang bagus untuk terjemahan.

Semua layanan lain yang saya gunakan adalah Google. Google App Engine untuk hosting aplikasi, Google Database, Google Storage untuk penyimpanan data.
Sangat nyaman bagi saya untuk menggunakan solusi yang sudah jadi - saya bekerja sendiri dan memiliki sedikit waktu untuk pengembangan (saya seorang ibu muda).

Sedikit tentang desain, manajemen tim


Pengembangan memimpin sendiri, tetapi menarik desainer dan pengembang Android Junior untuk menarik desain baru.

Saya ingin menulis sedikit tentang menemukan seorang desainer. Desain aplikasi, ikon, promo harganya $ 55. Saya percaya ini sangat murah dan harganya lebih dari kualitasnya. Saya menemukan seorang desainer di situs web lepas Rusia. Desainer yang mengambil sedikit memiliki fitur umum - mereka bekerja dengan baik hanya ketika detailnya dirinci, sampai ke bentuk setiap tombol dan apa kode warna RGB dari tombol ini. Ini berarti bahwa Anda harus menjadi direktur kreatif dan menghabiskan waktu Anda pada tugas yang terperinci.

Pengembang Android Junior ditemukan di Upwork. Saya hanya ingin mendapatkan pengalaman dari pelanggan. Memberinya tugas sederhana - untuk menarik desain. Dibayar 70 dolar. Tentu saja, akan lebih menarik untuk mempekerjakan Senior dev-a, menginstruksikan untuk mengevaluasi arsitektur aplikasi, belajar sesuatu darinya, tetapi tidak berani mengeluarkan banyak uang.

Saya ingin mencatat bahwa dengan melibatkan orang lain dalam proyek memungkinkan Anda untuk lebih mengontrol proyek. Ketika Anda merencanakan untuk orang lain, menetapkan tenggat waktu - Anda merencanakan untuk diri sendiri, dan Anda mulai melakukan bagian pekerjaan Anda dengan lebih cepat dan lebih sadar.

Sedikit tentang distribusi


Ketika aplikasi memasuki Play Market, saya meluncurkan iklan di AdWords, menarik pengguna dari seluruh dunia. Sebagian besar pengguna berasal dari India (15% dari total). Namun, orang-orang dari negara-negara ini tidak pernah membeli langganan. Mereka berlangganan berkali-kali, tetapi dalam 7 hari uji coba gratis mereka membatalkannya untuk menghindari pembayaran. Selain itu, klik mereka pada iklan hampir tidak ada. Ternyata tidak menguntungkan untuk melayani pengguna seperti itu, karena saya harus membayar untuk API dan saya memutuskan untuk menghapus aplikasi dari negara-negara yang tidak berada dalam 30 PDB per kapita teratas, termasuk Rusia dan Ukraina.

Semoga pengalaman saya bermanfaat. Jika Anda terlibat dalam proyek serupa atau hanya ingin bertukar pengalaman - tulis atau tambahkan ke linkedin.

Source: https://habr.com/ru/post/id422191/


All Articles