android中三星tab设备的条形码扫描问题
我正在做我的一个android项目,其中我实现了著名的Zbar条形码扫描仪,如下所示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
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" />