Android java.lang.IllegalArgumentException

Este es probablemente un simple para responder, pero no puedo parecer derecho y pensé que iba a pedir. Estoy recibiendo una java.lang.IllegalArgumentException y una java.lang.NullPointerException

Aquí está el registro de errores

03-20 13:13:22.872: E/SurfaceTextureClient(565): dequeueBuffer failed (No such device) 03-20 13:13:22.879: E/BaseSurfaceHolder(565): Exception locking surface 03-20 13:13:22.879: E/BaseSurfaceHolder(565): java.lang.IllegalArgumentException 03-20 13:13:22.879: E/BaseSurfaceHolder(565): at android.view.Surface.lockCanvasNative(Native Method) 03-20 13:13:22.879: E/BaseSurfaceHolder(565): at android.view.Surface.lockCanvas(Surface.java:76) 03-20 13:13:22.879: E/BaseSurfaceHolder(565): at com.android.internal.view.BaseSurfaceHolder.internalLockCanvas(BaseSurfaceHolder.java:184) 03-20 13:13:22.879: E/BaseSurfaceHolder(565): at com.android.internal.view.BaseSurfaceHolder.lockCanvas(BaseSurfaceHolder.java:161) 03-20 13:13:22.879: E/BaseSurfaceHolder(565): at ca.watercity.CityActivity$Blimp.render(CityActivity.java:235) 03-20 13:13:22.879: E/BaseSurfaceHolder(565): at ca.city.CityActivity$CityThread.run(CityActivity.java:580) 03-20 13:13:22.879: W/dalvikvm(565): threadid=11: thread exiting with uncaught exception (group=0x409c01f8) 03-20 13:13:22.889: E/AndroidRuntime(565): FATAL EXCEPTION: Thread-79 03-20 13:13:22.889: E/AndroidRuntime(565): java.lang.NullPointerException 03-20 13:13:22.889: E/AndroidRuntime(565): at ca.city.CityActivity$Blimp.render(CityActivity.java:237) 03-20 13:13:22.889: E/AndroidRuntime(565): at ca.city.CityActivity$CityThread.run(CityActivity.java:580) 03-20 13:26:12.633: E/AndroidRuntime(564): java.lang.NullPointerException 

Aquí están las dos líneas de código que está realizando.

  public void render(){ Canvas canvas = null; try{ // line 235 canvas = this._surfaceHolder.lockCanvas(null); synchronized (this._surfaceHolder) { canvas.save(); this.onDraw(canvas); canvas.restore(); } }finally{ if(canvas != null){ this._surfaceHolder.unlockCanvasAndPost(canvas); } } } 

Y estas líneas de código.

  @Override public void run() { while(this._running){ this._blimp.render(); } } // line 580 

Cualquier ayuda en esto sería muy apreciada. Gracias de antemano.

Está pasando null a SurfaceHolder.lockCanvas . Desea usar la versión sin argumento de lockCanvas() lugar, asumiendo que no tiene un rect que desea que se trate como sucio.

Guarde en un boolean si su instancia de Canvas ya está bloqueada o no para evitar la ejecución del método unockCanvasAndPost() antes de que su Canvas se desbloquee de una lockCanvas() anterior de lockCanvas() :

 private boolean canvasLocked; public void render() { Canvas canvas = null; try { // line 235 if (!canvasLocked) { canvas = this._surfaceHolder.lockCanvas(null); canvasLocked = true; synchronized (this._surfaceHolder) { canvas.save(); this.onDraw(canvas); canvas.restore(); } } } finally { if (canvas != null) { this._surfaceHolder.unlockCanvasAndPost(canvas); canvasLocked = false; } } } 
  • SwitchPreference (PreferenceAtivity) - Android NULL
  • NullPointer Exception en Android Google Maps durante la actualización de Mapa
  • NullPointerException en BoringLayout.isBoring no es nada aburrido
  • Android: ¿Cómo detectar en el reanudamiento que mi aplicación fue asesinada por VM?
  • NullPointerExceptions sólo en algunos dispositivos Samsung Galaxy?
  • Se ha producido un error interno durante: "Lanzamiento del proyecto". Java.lang.NullPointerException
  • ¿Qué es una NullPointerException y cómo puedo solucionarlo?
  • Inbuild de Android (ActionImageCapture) intento devuelve la intención nula. No puede entregar el resultado {who = null}
  • Android Fragment getActivity () = nulo
  • Llamando context.getResources () devuelve null
  • NullPointerException con aceleración de hardware activada?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.