我进行了一些研究(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进行的此调用已成功(以某种形式)以扫描模式打开Goog​​le Goggles,但是UI上没有显示“捕获”按钮,该按钮处于隐藏/不可用状态,因此无法拍摄/捕获任何图像。图像,以查看带有结果到我的应用程序的回调是否有效。

所以我的想法是:


只是不支持此功能,并且由于我打开Goog​​le 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/

10-11 22:16