blog kami

Barcode Crossing

Barcoding pada Android

zxing_zebra_logo
Kebanyakan masa apabila pekerja di Telaeris menerbitkan di sini, ia adalah untuk contoh kehidupan sebenar yang berkaitan dengan produk kami. Ini membolehkan kami membincangkan topik yang luas, termasuk penggunaan barcode dan penggunaan RFID, keselamatan atau keselamatan sistem atau tips tentang menjalankan perniagaan. Tetapi di tengah-tengah apa yang kita lakukan adalah untuk tampil penyelesaian yang kemas untuk masalah rumit. Beberapa entri blog akan datang adalah contoh bagaimana dua pelatih di Telaeris mula mencipta produk mudah alih baru percuma untuk kod bar pengesanan dan tag RFID dari peranti mudah alih Android atau iPhone anda. Sistem ini dipanggil DataLockr dan baru sahaja dilancarkan - saya sangat mengesyorkan anda menyemak aplikasi dan sistem. Apa yang mereka terangkan dalam artikel ini adalah langkah pertama mereka bagaimana untuk membina aplikasi membaca barcode mudah menggunakan perpustakaan sumber terbuka Zxing untuk Android.

Blog ini adalah untuk penggodam di luar sana yang suka kod. Nikmati!

Melaksanakan Perpustakaan Zxing yang dipermudahkan
Semasa kami melalui proses pembelajaran cara menggunakannya Zxing perpustakaan, kami mendapati bahawa ia agak menyusahkan untuk memahami apa yang berlaku di perpustakaan besar ini. Terdapat banyak tutorial di sana, tetapi banyak langkah sama ada kita keliru atau sudah ketinggalan zaman. Ada perkara yang hilang dari kod, atau perkara yang berbeza berdasarkan versi perpustakaan atau sesuatu yang tidak dijelaskan sepenuhnya. Kami mahu membuat tutorial yang akan membantu sesiapa yang cuba melaksanakan perpustakaan pengimbasan Zxing mudah mendapatkan permulaan yang cepat untuk menggunakannya dalam aplikasi mereka sendiri.

Tutorial ini menggunakan versi Zxing dirobohkan untuk mengajar asas-asas cara melaksanakan perpustakaan ke dalam aplikasi yang berdiri sendiri dan menggunakan aplikasi Android asli anda sendiri. Kami menggunakan Kit Pembangunan Android yang menjalankan SDK 19, pustaka 4.4 android. Perpustakaan telah diubahsuai menjadi pengimbas kod bar mod potret dan bukan orientasi mendatar yang asal.

Anda boleh memuat turun versi ringkas pustaka Zxing untuk digunakan dan diuji di sini: CaptureActivity. Ini berbeza daripada perpustakaan ZXing yang dilepaskan, tetapi bagus untuk membuat anda bermula.

Sekiranya anda tidak mempunyai Eclipse dengan SDK Android, muat turun dan pasang Kit Pembangunan Android. Buka SDK Android dan pasang komponen yang diperlukan. Seterusnya, buka Eclipse.

Langkah 1. Mula-mula kita akan mewujudkan projek ini.

Pergi ke menu utama Fail -> baru -> Projek Aplikasi Android. Namakan projek anda (kami memanggil kami "Aplikasi Pengimbas"). Salin tetapan di bawah dan klik kali 3 seterusnya sehingga membuat halaman Aktiviti. Pilih Aktiviti Kosong dan klik kemudian Selesai. Folder akan muncul di sebelah kiri skrin secara lalai. Jika tidak, klik butang memaksimumkan untuk membuka skrin projek di Eclipse.

Barcode Crossing

Langkah 2. Betulkan ralat tema (jika anda tidak mempunyai apa-apa, langkau ke langkah 3)

Jika anda mengalami kesilapan dalam folder nilai anda, ini mungkin isu Eclipse. Buka semua halaman style.xml dan padamkan semua tag gaya dan isinya. Juga pergi ke AndroidManifest.xml anda dan hapus android: theme = "@ style / AppTheme" di bawah aplikasi.

Langkah 3. Seterusnya adalah untuk mengimport perpustakaan pengimbas.

Jika anda belum lagi, sila muat turun zip CaptureActivty di atas. Pergi ke Fail -> Import -> Import Kod Android yang sedia ada ke Workspace -> dan buka semak imbas dan cari kod sumber Zxing yang telah anda muat turun. Periksa hanya projek pertama yang dipanggil CaptureActivity. Laluan tidak boleh mengandungi membina / di dalamnya. Klik selesai. Klik kanan / CaptureActivity / Folder dalam tab Pakej Explorer dan klik ciri -> Android dan pastikan kotak semakan "Adakah Perpustakaan" ditandakan. Klik ok.

Langkah 4. Sekarang kita mesti menyambungkan apl kami dengan perpustakaan pengimbas.

Klik kanan folder apl Android anda dan kemudian klik ciri -> Android. Klik pada butang tambah, dan klik pada CaptureActivity. Pastikan tanda semak hijau muncul selepas anda mengklik okay pada skrin Android dengan Pengimbas projek. Klik ok.

Langkah 5. Sekarang kita boleh mula melaksanakan pengimbas ke dalam permohonan kami. Mulakan dengan fail mainActivity.java.

Dalam folder aplikasi anda, pergi ke / src / folder dan buka akaun anda mainActivity.java fail. Berikut adalah kod yang diperlukan. Salin dan tampal apa yang anda tidak ada. Kod yang anda perlu tambahkan akan dalam teks merah. Jika anda mendapat kesilapan, anda perlu mengimport kelas tertentu. anda hanya boleh tekan ctrl + shift + O, dan semua import yang diperlukan akan diimport.



pakej com.example.scannerapp; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.Toast; MainActivity class public extends Activity {@Override protected void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); } @Orrride boolean awam onCreateOptionsMenu (menu Menu) {// Inflate menu; ini menambah item ke bar tindakan jika ia hadir. getMenuInflater (). inflate (R.menu.main, menu); kembali benar; } openScanner p ublic void (Lihat pandangan) {Intent intent = Intent baru ("com.example.scannerapp.SCAN"); startActivityForResult (niat, 0000); } public void onActivityResult (int requestCode, int resultCode, intent intent) {if (requestCode == 0000) {if (resultCode == RESULT_OK) {String content = intent.getStringExtra ("SCAN_RESULT"); Toast.makeText (ini, kandungan, 0) .show (); } else if (resultCode == RESULT_CARDLED) {// Handle cancel}}} } 

Terdapat dua fungsi utama di sini:

  1. Kaedah openScanner berjalan apabila butang ditekan, dan seterusnya akan membuka Pengimbas.
  2. Kaedah onActivityResult mengembalikan rentetan membaca kod bar. Dari sini, anda boleh membuka niat baru dan lulus dalam pembolehubah jika anda mahu memaparkan skrin lain selepas imbasan anda.

Langkah 6.Kami sekarang akan mengubah susun atur dalam fail activity_main.xml.

Sekarang dalam awak /aplikasi/ folder, pergi ke res folder -> layout -> file activity_main.xml. Ia sepatutnya kelihatan seperti berikut. Tambah kod merah berikut:


<RelativeLayout xmlns: android = "http://schemas.android.com/apk/res/android" xmlns: tools = "http://schemas.android.com/tools" android: layout_width = "match_parent" android: layout_height = "match_parent" android: paddingBottom = "@ dimen / activity_vertical_margin" android: paddingLeft = "@ dimen / activity_horizontal_margin" android: paddingRight = "@ dimen / activity_horizontal_margin" android: paddingTop = "@ dimen / activity_vertical_margin" Android, id = "@ + id / button0000" android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: layout_below = "@ + id / textView0000" android: layout_centerHorizontal = layout_marginTop = "1dp" android: text = "Scan" android: onClick = "openScanner" /> </ RelativeLayout>

Ini menambah butang, dan apabila ditekan, akan menjalankan kaedah openScanner dari mainActivity.java fail. Anda juga mungkin perlu memilih tema. Saya memilih Theme.holo.

Langkah 7. Pengubahsuaian terakhir adalah untuk mengedit Fail AndroidManifest.xml.

Pergi ke androidManifest.xml fail di bawah direktori projek. Kod harus dilihat seperti berikut, dan sekali lagi menyalin kod merah



<? xml version = "1.0" encoding = "utf-8"?> <manifest xmlns: android = "http://schemas.android.com/apk/res/android" package = "com.example.scannerapp" android : versionName = "1"> <uses-sdk android: minSdkVersion = "1.0" android: targetSdkVersion = "8" /> <! - PERMISSIONS REQUIRED BY ZXING -> <uses-permission android : name = "android.permission.CAMERA" /> <uses-permission android: name = "android.permission.INTERNET" /> <uses-permission android: name = "android.permission.WRITE_EXTERNAL_STORAGE" /> <! - CIRI YANG DIPERLUKAN OLEH ZXING -> <menggunakan ciri android: name = "android.hardware.camera" android: required = "true" /> <uses-feature android: name = "android.hardware.touchscreen" "palsu" /> <menggunakan ciri android: name = "android.hardware.telephony" android: required = "false" /> <application android: allowBackup = "true" android: icon = "@ drawable / ic_launcher" android: label = "@ string / app_name" android: theme = "@ style / AppTheme"> <activity android: name = "com.example.scannerapp.Ma inActivity "android: label =" @ string / app_name "> <intent-filter> <action android: name =" android.intent.action.MAIN "/> <category android: name =" android.intent.category.LAUNCHER " /> </ intent-filter> </ activity> <activity android: name = "com.telaeris.datalockrScanner.android.CaptureActivity" android: screenOrientation = "portrait" android: configChanges = "orientation | keyboardHidden" android: @android: style / Theme.NoTitleBar.Fullscreen "android: windowSoftInputMode =" stateAlwaysHidden "> <intent-filter> <action android: name =" android.intent.category.MAIN "/> <category android: name =" android. intent.category.LAUNCHER "/> </ intent-filter> <intent-filter> <action android: name =" com.example.scannerapp.SCAN "/> <category android: name =" android.intent.category.DEFAULT "/> </ intent-filter> </ activity> </ application> </ manifest>

Kami menambah kebenaran bahawa android memerlukan untuk menggunakan kamera dan termasuk aktiviti untuk aplikasi untuk mengetahui apa file yang akan dibuka apabila kami ingin membuka pengimbas pada peranti.

Langkah 8. Semua dilakukan!

Anda kini boleh menyusun dan menjalankan aplikasi anda pada peranti. Sekiranya terdapat sebarang kesilapan pengkompil, anda mungkin mahu membersihkan projek dan / atau memulakan semula gerhana.


Terima kasih
Blog ini berhutang banyak terima kasih kepada banyak orang:

  • Alberto Landaverde, yang diawasi dengan musim panas Telaeris dari 2012, yang mengubahsuai perpustakaan Zxing dan membina perpustakaan ringkas awal
  • Kelly Lim, pelatih Telaeris semasa, yang mengambil perpustakaan ini dan bergerak ke luar untuk membina DataLockr Aplikasi Android. Kelly juga menulis kandungan blog ini.
  • Jake Pham, pelatih Telaeris semasa, yang melalui tutorial di sini untuk memastikan segala-galanya berfungsi seperti yang diiklankan.

Tunggu untuk ansuran seterusnya di mana kami membincangkan cara membuat imbasan perpustakaan ZXing dalam mod potret dan landskap. Dan jika anda mempunyai masa, perhatikan produk dari semua usaha mereka - DataLockr.

DataLockrLogo
Dilihat. Diimbas. Dikongsi.

Leave A Comment

*

Maklumat Blog

Surat berita


bercakap dengan seorang wakil

Hubungi Kami

Telefon: 858-627-9700
Faks: 858-627-9702
-------------------------------
9123 Chesapeake Dr.
San Diego, CA 92123
-------------------------------
sales@telaeris.com