android中三星tab设备的条形码扫描问题

android中三星tab设备的条形码扫描问题,android,barcode-scanner,Android,Barcode Scanner,我正在做我的一个android项目,其中我实现了著名的Zbar条形码扫描仪,如下所示 surfaceViewFlash = (SurfaceView) mView.findViewById(R.id.PREVIEW); surfaceViewFlash.setVisibility(View.INVISIBLE); surfaceViewFlash.setVisibility(View.VISIBLE); mCameraSc

我正在做我的一个android项目,其中我实现了著名的Zbar条形码扫描仪,如下所示

surfaceViewFlash = (SurfaceView) mView.findViewById(R.id.PREVIEW);
            surfaceViewFlash.setVisibility(View.INVISIBLE);
            surfaceViewFlash.setVisibility(View.VISIBLE);

            mCameraScanner = getCameraInstance();
            getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
            previewingScanner = true;
            autoFocusHandlerScanner = new Handler();


            // Instance barcode zBarScanner
            zBarScanner = new ImageScanner();
            zBarScanner.setConfig(0, Config.X_DENSITY, 3);
            zBarScanner.setConfig(0, Config.Y_DENSITY, 3);


            mPreviewScanner = new CameraPreview(getActivity(), mCameraScanner, previewCb, autoFocusCB);
            FrameLayout preview = (FrameLayout) mView.findViewById(R.id.cameraPreview);
            preview.addView(mPreviewScanner);

            if (barcodeScanned) {
                barcodeScanned = false;
                mCameraScanner.setPreviewCallback(previewCb);
                mCameraScanner.startPreview();
                previewingScanner = true;

                mCameraScanner.autoFocus(autoFocusCB);

                Log.e("initControls", "initControls");
}
/** *获取摄影机对象实例的安全方法。 */

错误是

连接到摄影机时出错:0 09-02 13:16:39.35714292-14292/com.hyper.barcodeapp W/System.err﹕ java.lang.RuntimeException:无法连接到摄影机服务 09-02 13:16:39.367 14292-14292/com.hyper.barcodeapp W/System.err﹕ 在android.hardware.Camera.native_设置中(本机方法) 09-02 13:16:39.367 14292-14292/com.hyper.barcodeapp W/System.err﹕ 在android.hardware.Camera.(Camera.java:419) 09-02 13:16:39.367 14292-14292/com.hyper.barcodeapp W/System.err﹕ 打开(Camera.java:389) 09-02 13:16:39.367 14292-14292/com.hyper.barcodeapp W/System.err﹕ 位于com.hyper.barcodeapp.fragment.ScannerFragment$4.run(ScannerFragment.java:425) 09-02 13:16:39.367 14292-14292/com.hyper.barcodeapp W/System.err﹕ 位于android.os.Handler.handleCallback(Handler.java:733) 09-02 13:16:39.37714292-14292/com.hyper.barcodeapp W/System.err﹕ 位于android.os.Handler.dispatchMessage(Handler.java:95) 09-02 13:16:39.37714292-14292/com.hyper.barcodeapp W/System.err﹕ 位于android.os.Looper.loop(Looper.java:146) 09-02 13:16:39.37714292-14292/com.hyper.barcodeapp W/System.err﹕ 位于android.app.ActivityThread.main(ActivityThread.java:5598) 09-02 13:16:39.37714292-14292/com.hyper.barcodeapp W/System.err﹕ 位于java.lang.reflect.Method.Invokenactive(本机方法) 09-02 13:16:39.37714292-14292/com.hyper.barcodeapp W/System.err﹕ 位于java.lang.reflect.Method.invoke(Method.java:515) 09-02 13:16:39.37714292-14292/com.hyper.barcodeapp W/System.err﹕ 在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)上 09-02 13:16:39.37714292-14292/com.hyper.barcodeapp W/System.err﹕ 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099) 09-02 13:16:39.37714292-14292/com.hyper.barcodeapp W/System.err﹕ 在dalvik.system.NativeStart.main(本机方法)


有人能帮我解决这个问题吗?扫描仪区域出现黑屏。

您是否添加了正确的权限

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT" />

您应该尝试通过Google PlayServices 7.8版本提供的新条形码扫描Api。更多信息请参考我的答案。
 mCameraScanner=mCameraScanner.open();
                    if (null != mCameraScanner.getParameters()) {
                        parameters = mCameraScanner.getParameters();
                    }
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT" />