我进行了一些研究(Stack Overflow和网络),发现还有关于Google Goggles以及在Android上使用它的其他问题。通过一个意图。我了解到它尚未得到官方支持,我们都还在等待Google打开API或向我们提供易于在我们的应用中使用它的功能。
话虽如此-如果有人可以提供帮助,我仍然想对以下内容作出答复/澄清。
引用此问题:zxing intent "google goggles" doesn't recognize barcodes
有人回答说,Google Goggles确实对条形码进行解码,的确如此……因此,在我的应用程序中,我正在通过IntentIntegrator调用最新版本的Google Goggles应用程序:
https://code.google.com/p/zxing/wiki/ScanningViaIntent https://code.google.com/p/zxing/source/browse/trunk/android-integration/src/com/google/zxing/integration/android/IntentIntegrator.java
通过IntentIntegrator进行的此调用已成功(以某种形式)以扫描模式打开Google Goggles,但是UI上没有显示“捕获”按钮,该按钮处于隐藏/不可用状态,因此无法拍摄/捕获任何图像。图像,以查看带有结果到我的应用程序的回调是否有效。
所以我的想法是:
只是不支持此功能,并且由于我打开Google Goggles的调用方式,该按钮被禁用了吗?
我拨打电话时做错了什么?
最新版本的Google Goggles是否禁用了以前版本中可用的功能?
其他?
我如何拨打电话打开下面的Google Goggles的代码示例。还包括执行相同操作的另一种方法,但已注释掉以供参考。
// Try and open Google Goggles for scanning
try{
IntentIntegrator integrator = new IntentIntegrator(getSupportActivity());
integrator.initiateScan(IntentIntegrator.TARGET_ALL_KNOWN);
//Intent intent = new Intent("com.google.zxing.client.android.SCAN");
//intent.setPackage("com.google.android.apps.unveil");
//startActivity(intent);
}catch(Exception e){
Log.e(ScanFragment.class.getName(), "onViewCreated > Error creating scan Intent to Google Goggles: " + e.getMessage());
}
//>
在此方面提供更多帮助的任何帮助将不胜感激;谢谢。
// 狂野的
最佳答案
是的,我实际上不确定Goggles是否再支持此Intent
。默认情况下,它不在应用程序列表中。因此,如果您使用IntentIntegrator
,我认为您不会打开Goggles;您正在打开条形码扫描仪应用程序之一。他们没有捕获按钮,您只需将条形码显示即可。
如果确实要打开Goggles,则可能先前已将其设置为该Intent
的默认设置,并且它具有优先权。尝试在“设置”中清除应用程序处理程序关联。
关于android - 通过IntentIntegrator可以使用Google Goggles,但没有“捕获”按钮,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17313850/