2017-11-27 9 views
0

私はZXingライブラリにいくつかの問題がありますが、それは私の誤りであると確信しています。私は私のアプリを起動した場合、すべてのZXing libraryカメラに接続中にエラーが発生しました:0などの問題

まず、アプリが正常に動作するので、私は...

I I

がすべての権限を持っているし、問題はイベントonStop、onPauseの間だけであることを確信しています(このフォーラムで見つけることが可能であるように)いくつかの例に従うが、次のコードは、いくつかのエラーが発生し

@Override 
public void onPause() { 
    super.onPause(); 
    Log.d("Pause", "pause"); 
    mScannerView.stopCameraPreview(); 
    mScannerView.stopCamera();   // Stop camera on pause 
} 

@Override 
protected void onStop() { 
    super.onStop(); 
    Log.d("Stop", "stop"); 
    mScannerView.stopCameraPreview(); 
    mScannerView.stopCamera(); 
} 

しかし、私はエラー受信するたび:

E/ZXingScannerView: java.lang.RuntimeException: Method called after release() 
java.lang.RuntimeException: Method called after release() 
at android.hardware.Camera.setHasPreviewCallback(Native Method) 
at android.hardware.Camera.setOneShotPreviewCallback(Camera.java:878) 
at me.dm7.barcodescanner.zxing.ZXingScannerView.onPreviewFrame(ZXingScannerView.java:153) 
    at android.hardware.Camera$EventHandler.handleMessage(Camera.java:1187)      at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:135) 
    at android.os.HandlerThread.run(HandlerThread.java:61) 

私はすでに)を呼び出す

 mScannerView.stopCameraPreview(); 

または

mScannerView.stopCamera(); 

mScannerView.stopCameraPreview(なしを削除しようとしました。アプリは動作しますが、カメラが本当に近くにあり、バッテリーを浪費していないことがわかりません

画面を回転させたり戻るボタンを押したときにその他の問題が発生し、

W/CameraBase: An error occurred while connecting to camera: 0 

私にメッセージを受け取ったカメラを再び開くために、私のボタンをもう一度押しますか?

ありがとうございます。

答えて

0

私のトラブルの部分的な解決策です。私は携帯電話を回転させたときに

@Override 
public void onDestroy(){ 
    super.onDestroy(); 
    Log.e("Destroy", "destroy"); 
    mScannerView.stopCameraPreview(); 
    mScannerView.stopCamera(); 
} 

そして、私はバックボタンを押したときに、今私はLogcatにエラーを持っていませんが、私はまだリリース(後に呼び出さ方法に関するエラーを持っている):私は私のコードにこれを追加します。不思議な事実は、このエラーは必ずしも起こらないということですが、原因はどれか分かりません。

関連する問題