2013-04-18 38 views
10

Tôi hiện đang nghiên cứu để tạo ứng dụng đồng hồ báo thức trong Android. Tôi hoàn toàn mới và hoàn toàn mới để lập trình với mã QR. Tôi không biết gì về nó. Nhưng ngay bây giờ, tôi muốn tìm hiểu tính khả thi của việc tạo ra một ứng dụng với chức năng mã QR. (Tôi có hai tuần để xây dựng điều này)Đọc mã QR bằng máy ảnh - Android

Câu hỏi đầu tiên của tôi là: tôi có phải tự xử lý máy ảnh trong mã không, tôi phải kích hoạt và sau đó đóng và xử lý hình ảnh QR?

Câu hỏi thứ hai: Làm cách nào để tạo mã QR và sau đó khi tôi quét mã, làm cách nào để biết mã đã quét đúng? Tôi muốn in một, đặt nó trong nhà bếp hoặc phòng tắm và sau đó khi báo động tắt, tôi phải quét mã trước khi báo động tắt.

+0

bạn sẽ giúp tôi, tôi đang trên cùng một sân khấu, trong đó bạn là, tôi phải làm cùng một loại ứng dụng, bạn phát triển – Sun

Trả lời

15

Trong Android này đòi hỏi khoảng 10 phút:

https://github.com/zxing/zxing/wiki/Scanning-Via-Intent

+1

Hi, sự khác biệt giữa là gì quét qua mục đích và làm những gì Qadir đã đăng trong câu trả lời của anh ấy? –

+0

Đó chính xác là những gì Qadir đang đăng, nó không khác. –

+0

Xin lỗi, tôi không hiểu lớp IntentIntegrator là gì, so với ví dụ của Qadir. Liệu nó có mở ứng dụng Máy quét mã vạch bên ngoài không? –

6

Chỉ cần donwload Máy quét mã vạch (QR-Code Scanner) tập tin apk.

http://www.aapktop.com/tag/barcode-scanner-apk http://www.4shared.com/android/2lwrpeHZ/Barcode_Scanner.html http://code.google.com/p/zxing/downloads/detail?name=BarcodeScanner4.31.apk

Cài đặt nó thành thiết bị của bạn (không phải trên giả lập).

giờ hãy làm theo các bước sau.

  1. tạo dự án mới
  2. đặt nút trong tệp XML của bạn.
  3. Thực hiện một sự kiện click cho nó và gọi (QR-Code Scanner) thông qua ý định như

     // Scan Handler 
    btnScan.setOnClickListener(new OnClickListener() { 
    
        @Override 
        public void onClick(View v) { 
    
         Intent intent = new Intent(
           "com.google.zxing.client.android.SCAN"); 
         intent.putExtra("SCAN_MODE", "QR_CODE_MODE"); 
         startActivityForResult(intent, 0); 
        } 
    }); 
    
  4. Override phương pháp onActivityResult như

    // ZXing Result Handler 
    
    public void onActivityResult(int requestCode, int resultCode, Intent intent) { 
    
    if (requestCode == 0) { 
        if (resultCode == RESULT_OK) { 
    
    
          contents = intent.getStringExtra("SCAN_RESULT"); // This will contain your scan result 
           String format = intent.getStringExtra("SCAN_RESULT_FORMAT"); 
    
    
        } 
    } 
    

Q2

Answer 

có nhiều liên kết ngoài đó, bạn có thể tạo QR-CODE một cách tự do. chỉ google nó "Online QR MÃ generater" http://qrcode.kaywa.com/

+0

Xin chào, đó là rất nhiều thông tin cảm ơn bạn. Tôi lo lắng về việc chạy các tác vụ khác nhau cùng một lúc, đặc biệt là báo thức, tác vụ QR, máy ảnh. Sẽ có vấn đề liên quan đến điều này như luồng hay những gì có bạn? hoặc không zxing xử lý này? –

+0

Zxing sẽ chỉ giải mã mã vạch hoặc mã QR của bạn (trong kết quả onActivty). sau đó bạn có thể làm bất cứ điều gì. đầu tiên tôi đề nghị bạn hãy thử giải pháp của tôi. bạn có nhiều nhầm lẫn về điều này. điều này sẽ rõ ràng nhiều điều. –

+2

Tôi khuyên bạn chỉ nên sử dụng liên kết tải xuống chính thức tại code.google.com. Bạn có thể tin tưởng rằng đó là từ chúng tôi (nhà phát triển). Hướng dẫn này là tốt nhưng có thể dễ dàng hơn nếu bạn sử dụng mã 'IntentIntegrator' từ dự án (https://code.google.com/p/zxing/wiki/ScanningViaIntent). Cùng một ý tưởng, chỉ cần chăm sóc các vấn đề nhỏ hơn cho bạn. Cuối cùng - giống như bất kỳ ứng dụng phong nha, Máy quét mã vạch không làm gì khi không ở nền trước nên sẽ không ảnh hưởng đến ứng dụng của bạn khi ứng dụng không hoạt động. –

Các vấn đề liên quan