Мне нужен отдельный QR-сканер в моем приложении, поэтому я добавил библиотеку zxing в свое приложение для Android. Я следил за этим link. Я добавил зависимости в сборке .gradle, и это, как я вызываю метод:NullPointerException с библиотекой zxing для QR-сканирования (приложение для Android)
btnScanQR.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new IntentIntegrator(MainScreenActivity.this).initiateScan(); // `this` is the current Activity
}
});
// Get the results:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
if(result != null) {
if(result.getContents() == null) {
Toast.makeText(this, "Cancelled", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(this, "Scanned: " + result.getContents(), Toast.LENGTH_LONG).show();
}
} else {
super.onActivityResult(requestCode, resultCode, data);
}
}
так что это в основном так же, как на своей странице GitHub, так что не должно быть никаких проблем, не так ли?
Однако, я получаю эту ошибку, когда я пытаюсь открыть сканер через мое приложение, и я не могу найти какое-либо решение в Интернете для этой конкретной проблемы:
CameraInstance: Configuring camera
W/CameraManager: Failed to set rotation.
W/CameraManager: Camera rejected even safe-mode parameters! No configuration
E/CameraInstance: Failed to configure camera
java.lang.NullPointerException: Attempt to invoke virtual method 'android.hardware.Camera$Parameters android.hardware.Camera.getParameters()' on a null object reference
at com.journeyapps.barcodescanner.camera.CameraManager.setParameters(CameraManager.java:353)
at com.journeyapps.barcodescanner.camera.CameraManager.configure(CameraManager.java:139)
at com.journeyapps.barcodescanner.camera.CameraInstance$4.run(CameraInstance.java:171)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)
D/CameraPreview: pause()
D/CameraInstance: Closing camera
D/CameraPreview: pause()
Что является причиной этого (это потому, что он не вращается?) и как я могу это исправить? Я попытался изменить ориентацию, как он говорит на zxings GitHub странице с этим:
<activity
android:name="com.journeyapps.barcodescanner.CaptureActivity"
android:screenOrientation="fullSensor"
tools:replace="screenOrientation" />
IntentIntegrator integrator = new IntentIntegrator(this);
integrator.setOrientationLocked(false);
integrator.initiateScan();
Но я получаю ту же ошибку! Пожалуйста, помогите :(
проверить это https://github.com/dm77/barcodescanner – dindinii
я была такая же проблема. Если вы вставляете этот код: 'MobileBarcodeScanner.Initialize (Application);' в _onCreate_ в _MainActivity.cs_ вы сможете получить доступ к камере без исключений. – Adriano