我希望用户从他安装的应用程序中选择一个 QR 阅读器。这可以通过使用 Intent.createChooser 来完成。使用 QR 阅读器拍照时,应将 QR 码发送回我的应用程序。这是我迄今为止尝试过的:
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
String title = (String) getResources().getText(R.string.chooser_title);
Intent chooser = Intent.createChooser(intent, title);
startActivityForResult(chooser, CUSTOM_REQUEST_QR_SCANNER);
扫描仪无法正确启动,它只显示一个示例 QR 码。我有一种感觉 intent.setType("text/plain") 可能是错误的?什么类型的二维码阅读器?或者我如何正确启动 QR 阅读器?
完成 QR 应用程序后,我还有一个 ActivityResult:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (requestCode == CUSTOM_REQUEST_QR_SCANNER) {
Log.d(TAG, "QR activity complete");
//Successful scan
if (resultCode == RESULT_OK) {