Pengenalan kode batang Android. Rating aplikasi terbaik untuk scan barcode di iOS dan Android
Dalam tutorial ini kita akan mempelajari cara membuat aplikasi untuk membaca barcode dan kode QR menggunakan perpustakaan standar Mobile Vision API.
Kembali dengan dirilisnya layanan Google Play versi 7.8, pengembang menambahkan antarmuka Mobile Vision yang menyediakan API untuk deteksi kode batang. Mereka membaca dan memecahkan kode berbagai jenis kode batang, dengan cepat, mudah, dan lokal.
Kelas untuk deteksi dan analisis kode batang tersedia di namespace com.google.android.gms.vision.barcode. Pekerja keras utama adalah kelas BarcodeDetector. Ini menangani objek Frame dan mengembalikan barcode SparseArray
Jenis Barcode mewakili satu barcode yang dikenal secara universal beserta maknanya. Dalam kasus kode batang 1D, seperti kode UPC, ini hanyalah angka yang dikodekan ke dalam kode batang. Nilainya tersedia di kolom rawValue, sedangkan jenis kode batang (yaitu pengkodeannya) dapat ditemukan di kolom format.
Untuk kode batang 2D yang berisi data terstruktur, seperti kode QR, bidang valueFormat diatur ke tipe nilai tertentu yang sesuai dengan bidang data. Jadi, misalnya, jika jenis URL terdeteksi, maka bidang valueFormat akan mengembalikan konstanta URL, dan objek Barcode.UrlBookmark akan berisi nilai URL. Selain URL, ada banyak jenis data berbeda yang dapat disimpan oleh kode QR. Misalnya alamat surat, tanggal dan waktu acara kalender, acara kalender, informasi kontak, nomor telepon, lokasi peta, dan data lainnya, daftar lengkapnya tersedia dalam dokumentasi. Tautan ke dokumentasi.
Menggunakan Mobile Vision API dalam aplikasi memungkinkan Anda membaca barcode di posisi apa pun.
Penting untuk dicatat bahwa semua penguraian kode batang dilakukan secara lokal, jadi Anda tidak perlu menggunakan koneksi server untuk membaca data dari kode tersebut. Misalnya, saat membaca kode batang PDF-417 linier, yang dapat menampung teks hingga 1 KB, Anda bisa langsung mendapatkan semua informasi yang dikodekan di dalamnya.
Jadi, untuk mengembangkan aplikasi kita membutuhkan:
- Lingkungan pengembangan Android Studio
- Ponsel cerdas yang menjalankan Android 4.2.2 atau lebih baru
- Versi terbaru Android SDK, termasuk komponen alat SDK. Anda bisa mendapatkannya menggunakan Android SDK Manager di Android Studio.
- SDK Layanan Google Play. Anda juga bisa mendapatkannya dari Android SDK Manager di Android Studio.
Buat proyek baru di Android Studio. Saat membuat, pilih template Aktivitas Kosong.
Langkah selanjutnya adalah memastikan aplikasi Anda dapat menggunakan Layanan Google Play, yang mencakup Mobile Vision API. Untuk melakukan ini, Anda perlu memperbarui file build.gradle proyek Anda.
Seharusnya ada baris seperti ini di bagian dependensi. Perbarui Gradle jika perlu.
Kompilasi "com.android.support:appcompat-v7:25.0.0" kompilasi "com.google.android.gms:play-services:9.8.0"
Layanan Google Play sering diperbarui, dan untuk mendapatkan versi terbaru, di Android Studio, buka Alat > Android > SDK Manager.
Kemudian temukan baris untuk layanan Google Play dan pastikan Anda menginstal versi 26 atau lebih tinggi. Jika tidak, instal komponen tersebut.
Sekarang mari kita buat antarmuka pengguna.
Di Android Studio, pilih folder "res" dan buka subfoldernya "layout". Di sini Anda akan melihat "activity_main.xml". Buka di editor tata letak.
Anda dapat melihat bahwa tata letak Anda berisi bidang teks
Dengan mengklik tombol tersebut, gambar barcode akan dimuat dan diproses, yang akan ditampilkan di ImageView. Setelah kode batang diproses, informasi yang dibaca dari kode batang tersebut akan ditampilkan di TextView.
Biasanya, aplikasi pembaca kode batang menerima gambar dari kamera perangkat, atau memproses pratinjau kamera. Implementasinya akan membutuhkan kode yang cukup banyak, dan di akhir pelajaran saya akan menunjukkan contoh bagaimana mengimplementasikan aplikasi tersebut. Untuk menyederhanakan contoh ini, kami akan memproses gambar kode QR siap pakai yang sudah ada di aplikasi Anda.
Berikut adalah contoh gambar kode QR yang dapat Anda unduh dari sini.
Beri nama qr.png dan tambahkan ke folder proyek Anda res/drawable. Android Studio akan membuat file tersedia sebagai sumber daya dengan ID: R.drawable.qr
Sekarang mari kita beralih ke penulisan kode aplikasi.
Di file MainActivity.java, di metode onCreate, tambahkan kode berikut.
Tombol tombol = (Tombol) findViewById(R.id.button); btn.setOnClickListener(View baru.OnClickListener() ( @Override public void onClick(View v) ( ) ));
Ini menyiapkan event handler (onClick) yang diaktifkan ketika pengguna mengklik tombol. Kami akan menulis sisa kode dalam metode onClick.
Mari kita mulai dengan mengupload gambar barcode. Pertama, kita temukan ImageView berdasarkan ID. BitMapFactory kemudian digunakan untuk mendekode sumber daya R.drawable.qr menjadi bitmap. Kami meneruskan gambar raster yang dihasilkan ke ImageView.
ImageView myimageView = (ImageView)findViewById(R.id.imgview);
Bitmap myBitmap = BitmapFactory.decodeResource(getApplicationContext().getResources(), R.drawable.qr);
myimageView.setImageBitmap(myBitmap);
BarcodeDetector barcodeDetector = baru BarcodeDetector.Builder(getApplicationContext()) .setBarcodeFormats(Barcode.DATA_MATRIX | Barcode.QR_CODE) .build();
Bisa jadi pendeteksi barcode kita pertama kali berfungsi saat layanan Google Play belum siap memproses barcode. Oleh karena itu kita harus memeriksa apakah detektor kita berfungsi sebelum menggunakannya. Jika tidak, kami harus menunggu hingga pengunduhan selesai atau memberi tahu pengguna untuk mencari koneksi Internet atau mengosongkan ruang di perangkat. Sebelum kita mengakses kolom teks, kita perlu mendeklarasikannya dan menemukannya di atas dalam metode onCreate.
TextView txtView = (TextView) findViewById(R.id.txtContent);
Sekarang mari tambahkan metode untuk menampilkan pesan.
If (!barcodeDetector.isOperational()) ( txtView.setText("Tidak dapat menyiapkan detektor!"); )
Bingkai bingkai = Frame.Builder().setBitmap(myBitmap).build();
barcode = barcodeDetector.detect(bingkai);
Perlu diketahui bahwa Mobile Vision API mampu mendeteksi banyak kode batang dalam satu bingkai. Dalam hal ini SparseArray
akan diisi dengan banyak entri.
Lebih baik dijalankan di perangkat nyata. Ini tidak akan berfungsi pada emulator karena emulator tidak memiliki layanan Google Play secara default.
Sekarang aplikasi telah diluncurkan di perangkat, tekan tombol. Jika Anda menggunakan gambar barcode qr.png, Anda akan melihat data yang dikodekan dalam kode QR di kolom teks - ini adalah alamat situs web kami.
Ini adalah contoh aplikasi sederhana yang menunjukkan cara kerja Mobile Vision API. Namun pemindai kode batang yang lengkap harus menerima gambar dari kamera perangkat, atau memproses pratinjau kamera.
Pengembang telah menyiapkan contoh aplikasi semacam itu di Github, Anda dapat mengunduh kodenya dari tautan.
Kloning atau unduh proyek dan buka modul pembaca kode batang di Android Studio.
Saat kita menjalankan aplikasi dari proyek ini kita dapat melihat cara kerjanya. Awalnya, layar mulai terbuka, tempat Anda dapat mengaktifkan fokus otomatis atau flash. Tombol pembaca kode batang meluncurkan kamera. Aplikasi memantau kemunculan barcode di pratinjau dan menggambar bingkai pada barcode yang terdeteksi. Saat Anda mengklik area kode batang yang terdeteksi, pratinjau ditutup, mentransfer data kode batang yang terdeteksi ke bidang teks di layar mulai. Lihat lebih lengkapnya di.
Aplikasi ini juga menggunakan Mobile Vision API. Namun saat memeriksa proyek di Android Studio, Anda dapat melihat bahwa ada lebih banyak kode di sini daripada contoh sederhana kami.
Aplikasi ini terdiri dari delapan kelas. Tiga di antaranya bertanggung jawab atas antarmuka dan pengoperasian kamera.
- Kelas CameraSource menyediakan kontrol kamera untuk mendapatkan pratinjau.
- Kelas CameraSourcePreview bertanggung jawab untuk menampilkan pratinjau di layar.
- Kelas GraphicOverlay menampilkan objek grafis di atas pratinjau kamera terkait.
- Kelas MainActivity menampilkan jendela awal dengan pengaturan dan tombol untuk mulai memindai, dan menerima data kode batang untuk ditempatkan di TextView.
- Kelas BarcodeTrackerFactory mengimplementasikan pola Pabrik dan digunakan untuk membuat pelacak kode batang - satu untuk setiap kode batang.
- Kelas BarcodeGraphicTracker adalah pelacak yang digunakan untuk mendeteksi kode batang di layar dan melacaknya untuk melapisi grafik, serta menghapus grafik ketika kode batang tidak lagi terlihat.
- Kelas BarcodeGraphic digunakan untuk merender instance gambar overlay barcode berdasarkan posisi, ukuran, dan ID.
- Kelas BarcodeCaptureActivity adalah aktivitas yang diluncurkan ketika tombol pengambilan kode batang diklik di jendela mulai aplikasi. Aktivitas ini menampilkan pratinjau kamera dan mendeteksi kode batang di dalamnya, membacanya, dan menerapkan bingkai grafik ke setiap kode batang menggunakan kelas di atas.
Saya tidak akan mempelajari penjelasan lebih rinci tentang kode dari pengembang dalam pelajaran ini, tetapi akan menyerahkannya kepada Anda sebagai pekerjaan rumah. Selain itu, kodenya didokumentasikan dengan baik, setiap kelas dan metode berisi komentar dalam bahasa Inggris. Membaca dan memahami kode tersebut sangat berguna, terutama bagi pengembang pemula.
Untuk mendapatkan informasi tentang produk yang diminati di rak-rak toko, tidak perlu bertanya kepada penjualnya. Lagi pula, misalnya, ada ribuan produk di supermarket dan hypermarket - bagaimana seseorang bisa mengingat semuanya? Ponsel cerdas Anda sendiri akan membantu Anda mengetahui apa yang sebenarnya menarik perhatian Anda. Anda hanya perlu menginstal program pemindai barcode terlebih dahulu dan mengarahkan kamera ke label. Semua informasi yang diperlukan akan ditampilkan di layar: jenis produk apa (nama persisnya), siapa yang memproduksinya, berapa beratnya, berapa harganya, apakah sudah kadaluarsa, apakah dijual dengan harga diskon, dll.
Banyak sekali aplikasi untuk membaca dan menganalisis barcode telah dirilis. Yang paling populer didukung oleh beberapa sistem operasi, banyak perangkat, dan sederhana serta mudah digunakan. Mari kita lihat beberapa di antaranya.
Salah satu pemindai dan generator kode batang paling terkenal. Mampu mengenali berbagai format data secara akurat - QR-Code, Quick Code, EAN 8/13, Data Matrix, Code 128, Code 39, serta daftar lengkap barcode 1D. Dapat menjadi asisten dan penasihat saat melakukan pembelian. Selain itu, ini akan membantu Anda menemukan informasi tentang objek yang dipindai di Internet, memungkinkan untuk pergi ke alamat web yang ditentukan dalam kode, memanggil nomor telepon, mengirim surat, mengirim SMS, mencari tempat tertentu di peta, menyimpan data yang diterima dalam file teks, dan Anda juga dapat membuat kode 2D Anda sendiri, yang nantinya dapat Anda gunakan di mana pun Anda mau.
Program ini tersedia dalam versi standar dan diperpanjang. Lisensi standar memberikan hak untuk menggunakan produk secara gratis.
QuickMark dapat berfungsi sebagai aplikasi mandiri atau sebagai perpanjangan dari browser Google Chrome. Didukung pada platform berikut:
- apel iOS;
- Android;
- Windows Telepon;
- Symbian S60.
Bekerja pada berbagai model ponsel cerdas dan tablet, tidak menuntut sumber daya perangkat keras.
Aplikasi sederhana, cepat dan nyaman yang dapat mengenali berbagai macam barcode, termasuk yang sulit dibaca, tanpa alat tambahan: QR-Code, Data Matrix, Code 128, Code 39, EAN 8, UPC A, EAN 13. Mendukung pertukaran data teks jaringan.
Berkat kelebihannya, ixMAT telah diterapkan di bidang profesional - perdagangan, logistik, perusahaan industri, lembaga pemerintah, serta organisasi komersial dan nirlaba dari berbagai jenis bekerja dengannya. Aplikasi ini berbayar. Sebelum membeli, kami sarankan mengunduh versi uji coba untuk pengujian.
Versi ixMAT dikembangkan untuk platform berikut:
Pembaca Neo
Pemindai kode batang unik yang menggunakan teknologi ultra-Gavitec dan NeoMedia yang dipatenkan, berkat teknologi ini membaca dan mengenali hampir semua format kode batang yang ada: Aztec, Data Matrix, QR, EAN, UPC, Code128, Code39, dll.
Program ini dapat digunakan pada perangkat dan OS yang berbeda:
- Android,
- apel iOS;
- BlackBerry;
- Windows Seluler.
Bekerja secara stabil di ponsel Nokia, Apple, Blackberry, Samsung, Motorola, Sony Ericsson.
Pembaca Kaywa
Sama seperti analog yang disebutkan di atas, Barcode Scanner membaca berbagai jenis barcode menggunakan kamera ponsel. Memungkinkan Anda dengan cepat menerima semua informasi yang disandikan dan menyimpannya di memori perangkat. Kode atau data yang dipindai dapat dikirim melalui SMS, email, atau dikirim melalui jejaring sosial.
Didukung oleh smartphone berbasis Android dan Apple iOS. Pabrikan menjamin pengoperasian Kaywa Reader yang stabil pada banyak model Sony Ericsson, Samsung dan Motorola.
Aplikasi apa pun yang tercantum di sini dapat digunakan dalam perdagangan - bersama dengan pemindai kode batang profesional http://www.crystals.ru/skaner-shtrih-koda dan menjadi tambahan yang nyaman bagi aplikasi tersebut.
Keterangan:
Menggunakan aplikasi ini Anda dapat memecahkan kode barcode. Perangkat lunak ini sepenuhnya gratis. Saat memindai, jika kode QR berisi alamat situs, Anda secara otomatis akan dibawa ke sana. Aplikasi ini menghitung kode QR dan Matriks Data.
Fitur program:
- kemampuan untuk memindai kode batang melalui kamera perangkat Anda;
- kemampuan untuk melihat daftar riwayat semua pemindaian sebelumnya;
- kemampuan untuk membuat kode QR Anda sendiri;
- Bagikan kode QR melalui komunikasi elektronik.
Mari beralih ke pengaturan. Pengaturan aplikasi ini cukup fleksibel. Saat memindai kode batang, Anda dapat menonaktifkan pengenalan kode batang linier, Matriks Data, dan kode QR. Aplikasi ini memungkinkan Anda untuk mengaktifkan/menonaktifkan alarm suara dan getaran. Dimungkinkan juga untuk mengaktifkan aktivasi otomatis senter; ini diaktifkan ketika pencahayaan di dalam ruangan tidak mencukupi. Program ini akan membantu Anda menemukan informasi tentang produk yang dipindai di Internet, membandingkan harga, dll.
Kesimpulan:
Program ini memiliki antarmuka yang cukup sederhana dan tidak sepele yang bahkan seorang ibu rumah tangga pun dapat memahaminya. Saya ingin mencatat bahwa program ini berisi iklan dalam jumlah yang cukup besar. Jangan lupa bahwa akses Internet diperlukan untuk menggunakannya. Terima kasih atas perhatian Anda.
Banyak klien kami, ketika memutuskan untuk mengotomatisasi aktivitas perusahaan mereka, memulai pekerjaan mereka dengan mencari pemindai kode batang di Internet. Beberapa orang percaya bahwa pemindai tersebut sudah dilengkapi dengan program pencatatan.
Hal ini tidak mengherankan, karena semua orang melihat kode batang yang tercetak pada produk dan percaya bahwa pemindai yang dapat mengenali kode batang adalah dasar dari semua otomatisasi.
Nyatanya, pemindai kode batang- perangkat ini dapat dengan mudah mengenali strip kode batang, yang di dalamnya angka-angka yang terletak di bawah batang dikodekan, dan mentransfernya ke komputer mesin kasir atau perangkat khusus lainnya.
Untuk memelihara catatan operasional, Anda memerlukan perangkat lunak khusus: yang disebut program perdagangan.
- Program paling sederhana yang memungkinkan Anda menyimpan catatan adalah spreadsheet: program Microsoft Excel(Excel) dari Microsoft Office, atau office suite gratis Libre Office, OpenOffice.org dll. Untuk bekerja dengan program semacam itu, Anda memerlukan pemindai kode batang dengan antarmuka USB, karena setelah memindai, kode batang tersebut akan secara otomatis dimasukkan ke tempat kursor berada. Anda dapat membaca lebih lanjut tentang jenis antarmuka pemindai kode batang di artikel kami"Jenis antarmuka pemindai kode batang."
Tentu saja, menyimpan catatan dengan cara ini sangat merepotkan, namun opsi ini patut mendapat perhatian, karena sangat cocok untuk tugas akuntansi sederhana.
- Banyak klien yang mengetahuinya program 1C. Fitur khusus 1C adalah pabrikan menawarkan berbagai konfigurasi program yang dirancang khusus untuk setiap area bisnis. Misalnya, ada konfigurasi berikut: "Toko suku cadang mobil", "Toko peralatan rumah tangga dan komunikasi", "Toko pakaian dan sepatu", "Toko buku".
Anda dapat membaca tentang kelebihan dan kekurangan program 1C di artikel kami "Keuntungan dan kerugian dari program perusahaan 1C ".
Untuk pekerjaan yang nyaman dengan produk 1C, pemindai dengan antarmuka apa pun cocok, meskipun banyak pemrogram 1C memesanpemindai kode batang dengan port COM dan driver untuk pemindai kode batang untuk 1C.
- Ada juga program perdagangan khusus di pasar. Mereka lebih murah, lebih mudah perawatannya, dan tidak memerlukan pengaturan tambahan dan rumit. Kami mengundang Anda untuk membiasakan diri dengan salah satu program ini dari.
- sistem profesional untuk mengelola fasilitas gudang. Program ini dirancang untuk bekerja secara real time dengan direktori produk besar. Ini memiliki konektivitas bawaan dengan mesin kasir dan pembaca kode batang.
Sistem kata sandi dan tingkat akses menjamin perlindungan basis data yang andal tanpa membatasi fungsionalitas. Instalasi cepat dan mudah, kompatibel dengan semua jenis printer. Modul khusus "Layar sentuh" dan "Fasilitas perdagangan" memenuhi semua persyaratan yang diperlukan untuk sistem kelas ini.
Bersama kami Anda bisa. Anda dapat membeli program untuk minimarket, mengunduh program untuk pasar, membeli peralatan komersial untuk toko kelontong, memesan layanan otomasi pasar di Kyivdengan menghubungi Unipro Company LLC .
Kami juga merekomendasikan mengunjungi bagian situs web kami: "Proyek kami " untuk mengenal objek yang berhasil menggunakan program UniproRetail untuk akuntansi.
Halo semuanya, para pembaca yang budiman dan pengguna yang bahagia serta pemilik gadget seluler berbasis sistem operasi Android. Hari ini, seperti biasanya, saya memilih program, kali ini program untuk Android yang memungkinkan Anda memindai kode batang dan mendapatkan semua informasi tentang suatu produk menggunakan kode ini.
Program yang sangat bagus untuk memindai kode batang, yang memungkinkan Anda memindai kode batang apa pun secara gratis untuk mengetahui informasi lengkap tentang produk yang dipindai. Dari semua fungsi yang berguna, saya ingin mencatat hal berikut:
- Selain memindai barcode biasa, aplikasi ini juga dapat memindai kode QR;
- Aplikasi ini sepenuhnya gratis untuk diunduh dan digunakan. Poin ini menurut saya sangat penting dan menentukan dalam memilih aplikasi untuk sejumlah besar pengguna.
Pemindai kode batang dan kode QR bagus lainnya. Dari semua kelebihan yang tidak diragukan lagi dari program pemindaian kode batang ini, saya perhatikan hal berikut:
- Selain memindai dan mengenali kode batang dan kode QR, Anda dapat membuat kode Anda sendiri;
- Kemampuan untuk berbagi kode batang dengan teman dan pelanggan Anda di jejaring sosial paling populer;
- Aplikasi (pemindai) mampu menyimpan riwayat semua kode batang yang Anda kenali. Berkat ini, Anda dapat melihat semua kode Anda kapan saja.
Aplikasi untuk memindai barcode dan kode QR dalam bahasa Inggris. Karena Aplikasi ini dalam bahasa Inggris, tidak cocok untuk sebagian besar audiens berbahasa Rusia, tetapi jika Anda berbicara bahasa Inggris, Anda akan menyukai aplikasi tersebut. Saya ingin menunjukkan kemungkinan-kemungkinan berikut:
- Aplikasi ini memungkinkan Anda menemukan harga termurah untuk produk yang Anda minati. Terkadang ini sangat berguna;
- Cari produk berdasarkan kata kunci.
Dan yang menutup pilihan kita hari ini adalah aplikasi lain untuk memindai kode batang yang disebut “pemindai kode QR”. Dari semua kemungkinan tersebut, saya akan mencatat hal-hal berikut:
- Kemampuan untuk memindai kode batang baik dari kamera eksternal maupun dari gambar yang disimpan di gadget seluler;
- Mengirim kode batang ke jejaring sosial terpopuler melalui SMS.