Ich habe eine Kamera-App im Google Play Store mit Google Analytics installiert. Ich erhalte den folgenden Fehlerbericht:Korrekte Behandlung der Ausnahme: "GetParameters fehlgeschlagen (leere Parameter)"
getParameters fehlgeschlagen (leere Parameter)
Meine Frage ist: Was ist der richtige Weg, dies zu umgehen ist?
Blick in die Android-Quelle, wo es passiert, gab mir keine zusätzlichen Details. Der Fehler wird in android_hardware_Camera.cpp geworfen:
String8 params8 = camera->getParameters();
if (params8.isEmpty()) {
jniThrowRuntimeException(env, "getParameters failed (empty parameters)");
return 0;
}
Blick in Open-Source-Android-Kamera zu sehen, wie es die Situation behandelt war auch nicht sehr hilfreich. Dieser Code scheint die RuntimeException beim Aufrufen von getParameters nicht zu erfassen. (Außer in einem Fall, wo sie es fangen, schließen Sie die Kamera, und ziehen Sie sie dann erneut).
Gibt es einen richtigen Weg, damit umzugehen?
Wenn nicht, gibt es einen Grund, warum das so oft passiert?
Hinweis: An einem beliebigen Tag habe ich zwischen 5k - 8k aktive Benutzer. Mit irgendwo zwischen 40-70 dieser Ausnahmen. Das scheint wirklich hoch zu mir. Ich weiß, dass es legitime Fälle gibt, in denen eine Kamera möglicherweise nicht initialisiert wird. Aber 1% der Nutzer scheint unangemessen. Da die Android-Kamera-App die Ausnahme nicht behandelt, frage ich mich, ob es eine andere Ursache gibt.
Ich frage mich gesperrt wieder finden Sie eine Lösung –
+ Onur Taskin - Siehe meine Antwort unten. Es erklärt, wie ich es behoben habe und wie andere damit in Schwierigkeiten geraten könnten. – Grimmace
In meinem Fall bekam ich dies auf der Stock Camera App auf einem Android API 22 Emulator. Ich reparierte es, indem ich das 32bit x86 OS-Bild auf dem Emulator anstelle des 64bit x86 eins verwendete. –