2017-08-31 133 views
0

美好的一天!我正在使用QR碼掃描儀在android棉花糖和牛軋糖使用我已添加爲我的項目中的依賴項庫的相機顯示白色屏幕的問題。代碼完美地運行在棒棒糖和kitkat。請讓我知道,如果有一些我錯過了或我會做的事情,使其工作。我在下面粘貼我的代碼片段。如果你給我一些時間來注意我的關注,我很高興。我已經看到了類似的問題,但它沒有幫助我解決問題,或者我錯誤地實施了它。先謝謝你。zxing二維碼掃描儀相機顯示白色屏幕

我已經斑馬線罐子庫用於生成QR碼,並且我用me.dm7.barcodescanner:斑馬線:1.8.4用於掃描QR碼:

dependency { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
compile files('libs/zxing-2.1.jar') 
compile('me.dm7.barcodescanner:zxing:1.8.4'){ 
    exclude group: 'com.google.zxing' 
    } 
} 

用於照相機的開口的活動:

public class ScanQRCodeActivity extends AppCompatActivity implements ZXingScannerView.ResultHandler { 
private String strDataEncrypted; 
private ZXingScannerView mScannerView; 
public static String strEncrypt; 
public static String strEncrypted; 
public static String strIV; 
public static boolean isScanSuccess = false; 

@Override 
public void onCreate(Bundle state) { 
    super.onCreate(state); 
    mScannerView = new ZXingScannerView(this); 
    setContentView(mScannerView); 
} 

@Override 
public void onResume() { 
    super.onResume(); 
    mScannerView.setResultHandler(this); 
    mScannerView.startCamera(); 
} 

@Override 
public void onPause() { 
    super.onPause(); 
    mScannerView.stopCamera(); 
} 

@Override 
public void handleResult(Result result) { 
    strDataEncrypted = result.getText(); 
    Log.wtf("handleResult", strDataEncrypted); 
    String[] strSplit = strDataEncrypted.split("\\|\\|"); 
    strEncrypted = strSplit[0].trim(); 
    strIV = strSplit[1]; 
    CryptLibHelper cryptLibHelper = new CryptLibHelper(); 
    cryptLibHelper.decrypt(strEncrypted, strIV, new CryptLibHelper.CryptLibDecryptCallback() { 
     @Override 
     public void onDecryptFailed(String str_message) { 
      Log.wtf("onDecryptFailed", str_message); 
     } 

     @Override 
     public void onDecryptSuccess(String str_message) { 
      if (str_message.contains("}")) { 
       strEncrypt = str_message.replace("}", ""); 
       Log.wtf("onDecryptSuccess", strEncrypt); 
      } 
     } 
    }); 
    onBackPressed(); 
    isScanSuccess = true; 
    mScannerView.resumeCameraPreview(this); 
} 

}

回答

0

你有沒有在你的應用程序添加CAMERA權限檢查?從棉花糖開始,你需要詢問用戶一些權限。

您可以先嚐試從設備設置手動授予您的應用權限。

+0

感謝它現在的工作。 :)檢查我的應用程序中的相機權限是我錯過了。非常感謝。 – Jayrek