java - Zxing barcode scanner implementation intent -
i've been looking everywhere regarding implementing barcode scanner application/ i've included code which'll enable user scan if barcode scanner installed need prompt user download application if isn't installed? followed example me far.
here code
package com.example.zxingscan; import android.os.bundle; import android.app.activity; import android.content.intent; import android.view.view; import android.view.view.onclicklistener; import android.widget.textview; public class main extends activity { @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); handleclick hc = new handleclick(); findviewbyid(r.id.butqr).setonclicklistener(hc); } private class handleclick implements onclicklistener{ public void onclick(view arg0) { intent intent = new intent("com.google.zxing.client.android.scan"); switch(arg0.getid()){ case r.id.butqr: intent.putextra("scan_mode", "qr_code_mode"); break; } startactivityforresult(intent, 0); //barcode scanner scan } } public void onactivityresult(int requestcode, int resultcode, intent intent) { if (requestcode == 0) { textview tvstatus=(textview)findviewbyid(r.id.tvstatus); textview tvresult=(textview)findviewbyid(r.id.tvresult); if (resultcode == result_ok) { tvstatus.settext(intent.getstringextra("scan_result_format")); tvresult.settext(intent.getstringextra("scan_result")); } else if (resultcode == result_canceled) { tvstatus.settext("press button start scan."); tvresult.settext("scan cancelled."); } } } }
first of create dialog briefly explains situation , suggests install free zxing scanner app google play. add cancel
, install
button. i'm not going explain how here. take @ alertdialog.builder tutorial example.
upon user confirmation (install
button click) need start following intent:
startactivity(new intent(intent.action_view, uri.parse("market://details?id=com.google.zxing.client.android")));
market
protocol uri
s can used open app detail pages google play market. see this android documentation page more information.
Comments
Post a Comment