جدید! غربالگری XPressEntry HealthCheck در محل کار و نمایش COVID-19. اینجا را کلیک کنید برای کسب اطلاعات بیشتر.

وبلاگ ها

گذر بارکد

بارکد در آندروید

zxing_zebra_logo
بیشتر اوقات که کارمندان Telaeris در اینجا مقاله منتشر می کنند ، این نمونه های واقعی مربوط به محصولات ما است. این به ما امکان می دهد تا در مورد موضوعات مختلف ، از جمله بارکد و استفاده از RFID ، پیاده سازی سیستم ایمنی یا ایمنی یا نکات مربوط به اداره مشاغل ، بحث کنیم. اما در قلب آنچه که ما انجام می دهیم این است که به آن برسیم راه حل های شسته و رفته برای مشکلات دشوار است. چند مدخل بعدی وبلاگ نمونه هایی از چگونگی شروع دو کارآموز در Telaeris برای ایجاد یک محصول موبایل جدید رایگان برای ردیابی بارکد و برچسب های RFID از دستگاه همراه Android یا iPhone شما است. سیستم نامیده می شود DataLockr و به تازگی راه اندازی شده است - من اکیداً توصیه می کنم برنامه و سیستم را بررسی کنید. آنچه که آنها در این مقاله توصیف می کنند اولین قدم هایشان در مورد چگونگی ساخت یک برنامه ساده بارکد خوانی با استفاده از کتابخانه منبع باز Zxing برای اندروید است.

این وبلاگ مخصوص هکرهایی است که در آنجا دوست دارند کد نویسی کنند. لذت بردن!

پیاده سازی یک کتابخانه ساده Zxing
در حالی که ما در جریان یادگیری نحوه استفاده از آن بودیم Zxing کتابخانه، ما به زودی متوجه شدیم که این تلاش کمی برای درک آنچه در این کتابخانه عظیم بود، کمی مشکل بود. در آنجا بسیاری از آموزشها وجود داشت، اما بسیاری از مراحل یا ما را گمراه کرد یا از بین رفت. چیزهایی که از کد حذف شده بود یا چیزهایی که متفاوت بود بر اساس نسخه کتابخانه بود یا چیزی کاملا مشخص نشده بود. ما می خواستیم یک آموزش ایجاد کنیم که به هر کسی که تلاش می کند یک کتابخانه اسکن ساده Zxing را اجرا کند، به سرعت شروع به استفاده از آن در برنامه خود می کند.

این آموزش از نسخه پاره شده کتابخانه Zxing برای تدریس اصول نحوه پیاده سازی کتابخانه به یک برنامه مستقل و استفاده از برنامه اصلی اندروید خود استفاده می کند. ما از کیت توسعه اندرویدی SDK 19، اندیشه 4.4 library استفاده می کنیم. کتابخانه اصلاح شده است به عنوان یک اسکنر بارکد حالت عمودی و نه به طور پیش فرض جهت افقی است.

شما می توانید نسخه ساده ما از کتابخانه Zxing را برای استفاده و آزمایش اینجا دانلود کنید: CaptureActivity. این متفاوت از کتابخانه ZXing منتشر شده است، اما خوب است که شما شروع به کار کنید.

اگر Eclipse را با Android SDK ندارید ، آن را بارگیری و نصب کنید کیت توسعه اندروید. Android SDK را باز کنید و اجزای مورد نیاز را نصب کنید. بعد، Eclipse باز شود

مرحله 1 ابتدا پروژه را ایجاد خواهیم کرد.

به منوی بالا بروید پرونده -> جدید -> پروژه برنامه Android. پروژه خود را نامگذاری کنید (ما پروژه خود را "Scanner App" نامیدیم). تنظیمات زیر را کپی کرده و 3 بار روی بعدی کلیک کنید تا صفحه ایجاد فعالیت ایجاد شود. گزینه Empty Activity را انتخاب کرده و بعدی را کلیک کرده سپس Finish را بزنید. پوشه به طور پیش فرض در سمت چپ صفحه ظاهر می شود. در غیر این صورت ، روی دکمه حداکثر کلیک کنید تا صفحه پروژه در Eclipse باز شود.

گذر بارکد

 

مرحله 2 رفع اشتباهات تم (اگر هیچ کدام ندارید، به مرحله 3 بروید)

اگر در پوشه مقادیر خود خطایی دارید ، این ممکن است یک مسئله Eclipse باشد. همه صفحات style.xml را باز کرده و همه برچسب های سبک و محتوای آن را حذف کنید. همچنین به AndroidManifest.xml خود بروید و android: theme = "@ style / AppTheme" را در زیر برنامه حذف کنید.

مرحله 3 بعدا کتابخانه اسکنر را وارد کنید.

اگر هنوز رتبهدهی نشده است، لطفا Zip CaptureActivty را در بالا دانلود کنید. رفتن به پرونده -> وارد کردن -> وارد کردن کد موجود Android به Workspace -> و مرور را باز کنید و کد منبع Zxing که دانلود کرده اید پیدا کنید. فقط اولین پروژه را به نام چک کنید CaptureActivity مسیر نباید شامل ساخت / در آن باشد. روی پایان کلیک کنید. راست کلیک بر روی / CaptureActivity / پوشه در تب بسته اکسپلورر و کلیک کنید خواص -> اندروید و مطمئن شوید کادر تأیید "آیا کتابخانه" است. تأیید را کلیک کنید.

مرحله 4 ما اکنون باید برنامه خود را با کتابخانه اسکنر متصل کنیم.

راست کلیک بر روی پوشه نرم افزار آندروید خود را و سپس کلیک کنید خواص -> اندروید. بر روی دکمه افزودن کلیک کنید و روی CaptureActivity کلیک کنید. اطمینان حاصل کنید که علامت چک سبز پس از کلیک روی Ok روی صفحه نمایش Android با اسکنر پروژه ظاهر می شود. ok را کلیک کنید

گام 5. اکنون ما می توانیم اسکنر را به برنامه ما اجرا کنیم. شروع با فایل mainActivity.java.

در پوشه برنامه خود، به / src / پوشه و باز کردن mainActivity.java فایل. در زیر کد مورد نیاز است. کپی و چسباندن چیزی که شما ندارید. کد شما نیاز به اضافه کردن در متن قرمز خواهد بود. اگر اشتباه می کنید، باید کالاهای خاصی وارد کنید. شما فقط می توانید ctrl + shift + O را فشار دهید و همه واردات مورد نیاز وارد می شود.



package 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;

public class MainActivity extends Activity {

   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
   }

   @Override
   public boolean onCreateOptionsMenu(Menu menu) {
      // Inflate the menu; this adds items to the action bar if it is present.
      getMenuInflater().inflate(R.menu.main, menu);
      return true;
   }
   public void openScanner(View view){
      Intent intent = new Intent("com.example.scannerapp.SCAN");
      startActivityForResult(intent, 0);
   }

   public void onActivityResult(int requestCode, int resultCode, Intent intent) {
      if (requestCode == 0) {
         if (resultCode == RESULT_OK) {
            String contents = intent.getStringExtra("SCAN_RESULT");
            Toast.makeText(this,contents,3000).show();
         } else if (resultCode == RESULT_CANCELED) {
            // Handle cancel
         }
      }
   }
} 

دو توابع کلیدی در اینجا وجود دارد:

  1. روش openScanner زمانی اجرا می شود که یک دکمه فشار داده شود و سپس اسکنر را باز می کند.
  2. روش onActivityResult رشته بارکد خوان را باز می کند. از اینجا، شما می توانید یک قصد جدید را باز کنید و در متغیرها منتقل کنید، اگر می خواهید بعد از اسکن یک صفحه دیگر نمایش داده شود.

مرحله 6.We اکنون طرح را در فایل activity_main.xml تغییر می دهد.

در حال حاضر در خود / app / پوشه، به پوشه res -> layout -> فایل activity_main.xml. این باید مانند موارد زیر باشد. کد قرمز زیر را اضافه کنید:


<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"
     tools:context=".MainActivity" >

    <Button
         android:id="@+id/button1"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_below="@+id/textView1"
         android:layout_centerHorizontal="true"
         android:layout_marginTop="159dp"
         android:text="Scan" 
         android:onClick="openScanner"/>

</RelativeLayout>

این یک دکمه را اضافه می کند و هنگامی که فشار داده می شود، روش openScanner از آن اجرا می شود mainActivity.java فایل. شما همچنین ممکن است نیاز به تم را انتخاب کنید. من Theme.holo را انتخاب کردم.

گام 7. آخرین اصلاحیه این است که فایل androidManifest.xml را ویرایش کنید.

رفتن به androidManifest.xml فایل تحت دایرکتوری پروژه. کد باید به صورت زیر نگاه کنید و دوباره کد قرمز را کپی کنید



<?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
 package="com.example.scannerapp"
 android:versionCode="1"
 android:versionName="1.0" >

<uses-sdk
 android:minSdkVersion="8"
 android:targetSdkVersion="21" />

 <!-- 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" />

    <!-- FEATURES REQUIRED BY ZXING -->
    <uses-feature android:name="android.hardware.camera" android:required="true" />
    <uses-feature android:name="android.hardware.touchscreen"  android:required="false" />
    <uses-feature 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.MainActivity"
        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:theme="@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>

ما در حال اضافه کردن مجوز هایی هستیم که اندروید نیاز به استفاده از دوربین و از جمله فعالیت های مربوط به برنامه برای شناختن فایل ها برای باز کردن زمانی که می خواهیم اسکنر را در دستگاه باز کنیم.

مرحله 8 همه انجام شده است!

اکنون باید بتوانید برنامه خود را در یک دستگاه کامپایل و اجرا کنید. اگر خطاهای کامپایلر وجود داشته باشد، ممکن است بخواهید پروژه را تمیز کنید و / یا دوباره تکرار کنید.

 
متشکرم
این وبلاگ از بسیاری از افراد تشکر فراوان می کند:

  • آلبرتو لاندردر، که در تابستان Xelaxer از 2012 تعطیل شد، کتابخانه Zxing را تغییر داد و کتابخانه ساده را ساده ساخت
  • کلی لیم، کارآموز تلئرز فعلی، که این کتابخانه را گرفته و از آن برای ساختن آن فراتر رفت DataLockr برنامه آندروید کلی همچنین محتوای این وبلاگ را نوشته است.
  • جیک فام، کارآموز تلئرز در حال حاضر، که در اینجا آموزش داده شد تا اطمینان حاصل کند که همه چیز به عنوان تبلیغ تبلیغ شده است.

منتظر قسمت بعدی باشید ، جایی که ما در مورد چگونگی اسکن کتابخانه ZXing در دو حالت عمودی و افقی صحبت می کنیم. و اگر وقت دارید ، نگاهی به محصول تمام تلاش آنها بیندازید - DataLockr

DataLockrLogo
دیده می شود. اسکن شده به اشتراک گذاشته شود

ارسال نظر

*

اشتراک ایمیل

آخرین به روزرسانی های ارسال شده مستقیم به صندوق ورودی خود را دریافت کنید