2017-06-04 9 views
0

Ich weiß, dass die Frage zuvor gestellt wurde, und ich habe alle Lösungen gelesen, aber mein Fall ist irgendwie seltsam, ich komme immer auf Crash-Bericht auf Entwickler-Konto die folgenden:java.lang.RuntimeException: Camera.setParameters

java.lang.RuntimeException: bei android.hardware.Camera.native_setParameters (native Methode: 0) bei android.hardware.Camera.setParameters (Camera.java:2080) bei com.xxxxxxxxxx.core.xxxxxxxx .xxxxxxx.surfaceCreated (BackgroundVideoRecorder.java:119) bei android.view.SurfaceView.updateWindow (SurfaceView.java:675) um android.view.SurfaceView $ 3.onPreDraw (SurfaceView.j ava: 185) bei android.view.ViewTreeObserver.dispatchOnPreDraw (ViewTreeObserver.java:944) bei android.view.ViewRootImpl.performTraversals (ViewRootImpl.java:2050) bei android.view.ViewRootImpl.doTraversal (ViewRootImpl.java: 1117) bei android.view.ViewRootImpl $ TraversalRunnable.run (ViewRootImpl.java:6175) bei android.view.Choreographer $ CallbackRecord.run (Choreographer.java:773) bei android.view.Choreographer.doCallbacks (Choreographer .java: 586) um android.view.Choreographer.doFrame (Choreographer.java:556) um android.view.Choreographer $ FrameDisplayEventReceiver.run (Choreographer.java:759) bei android.os.Handler.handleCallback (Handler .java: 739) unter android .os.Handler.dispatchMessage (Handler.java:95) um android.os.Looper.loop (Looper.java:135) um android.app.ActivityThread.main (ActivityThread.java:5421) um java.lang .reflect.Method.invoke (Native Methode: 0) um java.lang.reflect.Method.invoke (Methode.java:372) um com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java: 914) bei com.android.internal.os.ZygoteInit.main (ZygoteInit.java:707)

den Namen der Anwendung aus Gründen der Werbung entfernt, habe ich versucht, die Anwendung auf mehreren Geräten und ich nicht kommen kann den Fehler reproduzieren, auch wenn die Geräte, die ich ausprobiert habe, im Absturzbericht und in m verfügbar sind y Parametererzeugungsprozess stellte ich sicher, zu überprüfen, ob alle Parameter unterstützt wird, indem Sie die Kamera params Überprüfung hier den Code unten:

if (front) { 
      params = camera.getParameters(); 
      params.setRotation(90); 
      List<String> focusModes = params.getSupportedFocusModes(); 
      if (focusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO)) { 
       params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO); 
       Log.w("VideoTakerFront","Continuous Video Supported"); 
      } 
     } else { 
      params = camera.getParameters(); 
      params.setRotation(270); 
      List<String> focusModes = params.getSupportedFocusModes(); 
      if (focusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO)) { 
       params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO); 
       Log.w("VideoTakerBack","Continuous Video Supported"); 
      } 
     } 
     camera.setParameters(params); 
       if (android.os.Build.VERSION.SDK_INT>=android.os.Build.VERSION_CODES.JELLY_BEAN_MR1){ 
        camera.enableShutterSound(false); 
       } 
       else{ 
        AudioManager audio= (AudioManager)this.getApplicationContext().getSystemService(Context.AUDIO_SERVICE); 
        audio.setStreamVolume(AudioManager.STREAM_SYSTEM, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE); 
       } 
     Log.w("VideoTaker", "Open Camera"); 

Vielen Dank für die Hilfe!

+0

Haben Sie überprüft, welche API diese Geräte laufen, weil 'android.hardware.Camera' auf API 21 und höher veraltet ist, vielleicht verursacht das den Absturz – Yupi

+0

, also muss ich Camera API 2 für Geräte höher als 21 verwenden? aber ich habe ein 7.0 Gerät, und ich stelle das Problem nicht. O.o –

+0

Sie werden immer sehr empfohlen, veralteten Code zu ersetzen. – Yupi

Antwort

0

Ich fand das Problem ... Die Benutzer, die das Problem gemeldet haben, war eine ältere Version der Anwendung, ich habe nicht auf die Version geachtet, dieses Problem in einer älteren Version vor, ich tat es nicht Verwenden Sie, um den Fokusmodus zu aktivieren und prüfen Sie, ob es verfügbar ist, danke!

Verwandte Themen