我目前正在研究在Android中构建闹钟应用程序。我对使用QR码进行编程完全没有经验,一无所知。但现在,我想要探索创建具备QR码功能的应用程序的可行性。(我有两周时间来完成这个项目)
我的第一个问题是:我是否需要在代码中自己处理相机,即需要我启动相机并关闭它,然后处理QR码图像?
第二个问题是:我该如何创建QR码,扫描时如何确保它扫描了正确的那一个? 我想打印一个二维码,放在厨房或浴室里,当闹钟响时,我必须先扫描二维码才能关闭闹钟。
我目前正在研究在Android中构建闹钟应用程序。我对使用QR码进行编程完全没有经验,一无所知。但现在,我想要探索创建具备QR码功能的应用程序的可行性。(我有两周时间来完成这个项目)
我的第一个问题是:我是否需要在代码中自己处理相机,即需要我启动相机并关闭它,然后处理QR码图像?
第二个问题是:我该如何创建QR码,扫描时如何确保它扫描了正确的那一个? 我想打印一个二维码,放在厨房或浴室里,当闹钟响时,我必须先扫描二维码才能关闭闹钟。
在Android中,这需要大约10分钟:
只需下载二维码扫描器(QR-Code Scanner)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
将其安装到设备上(而不是模拟器)。
现在按照以下步骤操作。
Make a click event for it and call the (QR-Code Scanner) via intent as
// 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);
}
});
Override the onActivityResult Method as
// 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
有许多链接可以免费生成各种类型的QR-CODE。只需在Google上搜索“在线QR CODE生成器”即可。http://qrcode.kaywa.com/
IntentIntegrator
代码(https://code.google.com/p/zxing/wiki/ScanningViaIntent),它甚至可以更容易。同样的想法,只是为您处理更多的小问题。最后 - 像任何体面的应用程序一样,当不在前台时,条形码扫描器不会执行任何操作,因此在应用程序不活动时不会对其产生影响。 - Sean Owen