Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cuál es el error en mi logcat?

Estoy casi terminado con mi juego ahora, pero hoy he encontrado un problema anoying real. Cuando comienzo el juego y sólo espero unos cuantos segundos, el programa se cierra automáticamente. Y no tengo explonación por ello.

Esto es lo que muestra mi logcat:

01-22 16:20:31.232: DEBUG/szipinf(333): Initializing inflate state 01-22 16:20:31.563: DEBUG/PhoneWindow(333): couldn't save which view has focus because the focused view com.JDLApps.Snake.FrameWork.AndroidFastRenderView@4050f950 has no id. 01-22 16:20:36.362: WARN/ActivityManager(73): Activity pause timeout for HistoryRecord{406532f8 com.JDL.Apps.Snake/.SnakeGame} 01-22 16:20:43.682: INFO/ActivityManager(73): Start proc com.android.launcher for activity com.android.launcher/com.android.launcher2.Launcher: pid=358 uid=10026 gids={} 01-22 16:21:20.393: ERROR/InputDispatcher(73): channel '406762c0 com.JDL.Apps.Snake/com.JDL.Apps.Snake.SnakeGame (server)' ~ Consumer closed input channel or an error occurred. events=0x8 01-22 16:21:20.402: ERROR/InputDispatcher(73): channel '406762c0 com.JDL.Apps.Snake/com.JDL.Apps.Snake.SnakeGame (server)' ~ Channel is unrecoverably broken and will be disposed! 01-22 16:21:21.092: INFO/WindowManager(73): WIN DEATH: Window{406762c0 com.JDL.Apps.Snake/com.JDL.Apps.Snake.SnakeGame paused=false} 01-22 16:21:21.142: WARN/ActivityManager(73): Timeout of broadcast BroadcastRecord{40728640 android.intent.action.TIME_TICK} - receiver=android.app.LoadedApk$ReceiverDispatcher$InnerReceiver@406300f8, started 56630ms ago 01-22 16:21:21.142: WARN/ActivityManager(73): Receiver during timeout: BroadcastFilter{4062f930 ReceiverList{4062f8b8 73 system/1000 local:406300f8}} 01-22 16:21:21.172: INFO/ActivityManager(73): Process com.JDL.Apps.Snake (pid 333) has died. 01-22 16:21:21.362: INFO/WindowManager(73): WIN DEATH: Window{4072b188 SurfaceView paused=false} 01-22 16:21:21.443: INFO/ActivityManager(73): Low Memory: No more background processes. 

Lamentablemente no hay código para compartir porque no sé si el programa se bloquea.

EDIT: Código de dibujo:

 @Override public void screen(float deltaTime) { Graphics g = app.getGraphics(); g.drawPixmap(Assets.background, 0, 0); g.drawPixmap(Assets.facebook, 750, 20); g.drawText("SNAKE", 10, 150, Color.BLACK, 150, AndroidGraphics.LEFT, null, 0); g.drawText("START", g.getWidth() / 2, g.getHeight() - 20, Color.BLACK, 120, AndroidGraphics.CENTER, startRec, 0); g.drawText("HIGHSCORE", 20, 275, Color.BLACK, 50, AndroidGraphics.LEFT, highRec, 0); g.drawText("MORE APPS", g.getWidth() - 20, 275, Color.BLACK, 50, AndroidGraphics.RIGHT, moreRec, 0); if (Settings.soundEnabled) g.drawPixmap(Assets.buttons, new Rect(0, 0, 100, 100), new Rect(0, 380, 100, 480)); else g.drawPixmap(Assets.buttons, new Rect(100, 0, 200, 100), new Rect( 0, 380, 100, 480)); } 

Método drawText:

 @Override public void drawText(String text, int x, int y, int color, int size, int position, Rect bounds, int rotation) { if (position == LEFT) paint.setTextAlign(Paint.Align.LEFT); else if (position == CENTER) paint.setTextAlign(Paint.Align.CENTER); else if (position == RIGHT) paint.setTextAlign(Paint.Align.RIGHT); else return; paint.setColor(color); Typeface typeface = Typeface.createFromAsset(assets, "typewrite.TTF"); paint.setTypeface(typeface); paint.setTextSize(size); if (bounds != null) { Rect rec = new Rect(); paint.getTextBounds(text, 0, text.length(), rec); bounds.bottom = y; bounds.top = y - rec.height(); if (position == CENTER) { bounds.left = x - rec.width() / 2; bounds.right = x + rec.width() / 2; } else if (position == RIGHT) { bounds.left = x - rec.width(); bounds.right = x; } else if (position == LEFT) { bounds.left = x; bounds.right = x + rec.width(); } else return; } canvas.save(); canvas.rotate(rotation, x, y); canvas.drawText(text, x, y, paint); canvas.restore(); } 

  • ¿Podemos desactivar "chatty" en logcat?
  • ¿Hay una manera fácil de "desactivar el registro" antes de liberar su aplicación en el mercado?
  • ¿Cómo sincronizar el tiempo de Kernel y el tiempo de logcat?
  • Su contenido debe tener un TabHost cuyo atributo id es 'android.R.id.tabhost'
  • La base de datos SQLite proporciona un índice automático de advertencia en <table_name> (column) Después de actualizar Android L
  • No se pudo cargar el módulo de memtrack Error de Logcat
  • Procesos del teléfono Flooding LogCat Salida - ¿Cómo eliminar esos mensajes?
  • Logcat rellenado con java.io.IOException: Mensajes de rechazo de conexión
  • 3 Solutions collect form web for “¿Cuál es el error en mi logcat?”

    Tiene una pérdida de memoria en alguna parte. Vea esta entrada de blog en los documentos del desarrollador para las herramientas que puede utilizar para localizarla. También vea esta entrada del blog para consejos de programación para evitar pérdidas de memoria en las aplicaciones de Android.

     ~ Channel is unrecoverably broken and will be disposed! 01-22 16:21:21.443: INFO/ActivityManager(73): Low Memory: No more background processes. 

    Parece que su juego usando dos mucho memoria (o) pérdida de memoria. Es posible que necesite registrar el uso de memoria de su proceso usando algunas de las técnicas descritas en esta discusión y tome desde allí.

    Con la depuración de un solo paso, obtuve el error de detalle: debe proporcionar el atributo layout_height en …. Funcionó para mi situación.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.