<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Depuraci%C3%B3n%3A_LogCat</id>
	<title>Depuración: LogCat - Historial de revisiones</title>
	<link rel="self" type="application/atom+xml" href="https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Depuraci%C3%B3n%3A_LogCat"/>
	<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Depuraci%C3%B3n:_LogCat&amp;action=history"/>
	<updated>2026-10-26T02:22:51Z</updated>
	<subtitle>Historial de revisiones de esta página en la wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://manuais.iessanclemente.net/index.php?title=Depuraci%C3%B3n:_LogCat&amp;diff=57154&amp;oldid=prev</id>
		<title>Angelfg en 08:52 28 jul 2015</title>
		<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Depuraci%C3%B3n:_LogCat&amp;diff=57154&amp;oldid=prev"/>
		<updated>2015-07-28T08:52:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Introdución==&lt;br /&gt;
*Unha das técnicas para realizar depuración e seguimento das aplicacións é a creación de logs (rexistros) en tempo de execución.&lt;br /&gt;
*En Android úsase a clase &amp;#039;&amp;#039;&amp;#039;Log&amp;#039;&amp;#039;&amp;#039;, que posúe un conxunto de métodos estáticos que nos van axudar no proceso de depuración/seguimento.&lt;br /&gt;
&lt;br /&gt;
[[Image:Android_2014_U4_01_Depuracion_01.jpg|700px]]&lt;br /&gt;
*A imaxe amosa un conxunto de mensaxes que teñen, entre outros, os seguintes campos.&lt;br /&gt;
**Nivel de criticidade: tipo de mensaxe (Erro, Warning, INfo, Debug, etc)&lt;br /&gt;
**PID: Código do proceso que produciu a mensaxe.&lt;br /&gt;
**Tag: Etiqueta que axuda á identificación da mensaxe, moi útil para filtrar resultados.&lt;br /&gt;
**Mensaxe&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Para cada nivel de criticidade existe un método estático que nós axuda a clasificar as mensaxes que pode producir a aplicación: &amp;#039;&amp;#039;&amp;#039;e(), w(), i(), d() e v()&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
*Cada un dos métodos recibe como parámetro a etiqueta (&amp;#039;&amp;#039;tag&amp;#039;&amp;#039;) e o texto da mensaxe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Referencias:&lt;br /&gt;
**A Clase Log: http://developer.android.com/reference/android/util/Log.html&lt;br /&gt;
&lt;br /&gt;
==Caso práctico==&lt;br /&gt;
*Crear o seguinte proxecto: &amp;#039;&amp;#039;&amp;#039;U4_01_Depuracion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Imos realizar un pequeno proxecto onde amosamos como poder usar o LOG.&lt;br /&gt;
*A etiqueta que se está usando no programa é: &amp;quot;DEPURACIÓN&amp;quot;&lt;br /&gt;
*E estamos usando un filtro para ver só as etiquetas con ese nome.&lt;br /&gt;
*Para ver as mensaxes de log usaremos a ventá &amp;#039;&amp;#039;&amp;#039;LogCat&amp;#039;&amp;#039;&amp;#039; que está tanto na perspectiva Java como DDMS.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Depuración&amp;quot; widths=&amp;quot;350&amp;quot; heights=&amp;quot;300px&amp;quot; perrow=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
Image:Android_2014_U4_01_Depuracion_03.jpg|Lanzamos a aplicación &lt;br /&gt;
Image:Android_2014_U4_01_Depuracion_02.jpg|E no LogCat amosa unha serie de mensaxes con distintos niveis de criticidade.&amp;lt;br&amp;gt;Estas foron creadas dentro do método onCreate().&lt;br /&gt;
Image:Android_2014_U4_01_Depuracion_04.jpg|Escribimos un valor correcto&lt;br /&gt;
Image:Android_2014_U4_01_Depuracion_05.jpg|E no LogCat vemos por anda a aplicación ...&lt;br /&gt;
Image:Android_2014_U4_01_Depuracion_06.jpg|Escribimos un valor incorrecto&lt;br /&gt;
Image:Android_2014_U4_01_Depuracion_07.jpg|E volvemos ver por onde anda a aplicación ...&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===O XML do Layout===&lt;br /&gt;
*A continuación amósase o Layout da aplicación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line enclose=&amp;quot;div&amp;quot; highlight=&amp;quot;13,19&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;LinearLayout xmlns:android=&amp;quot;http://schemas.android.com/apk/res/android&amp;quot;&lt;br /&gt;
    xmlns:tools=&amp;quot;http://schemas.android.com/tools&amp;quot;&lt;br /&gt;
    android:layout_width=&amp;quot;match_parent&amp;quot;&lt;br /&gt;
    android:layout_height=&amp;quot;match_parent&amp;quot;&lt;br /&gt;
    android:orientation=&amp;quot;vertical&amp;quot;&lt;br /&gt;
    tools:context=&amp;quot;com.example.u4_01_depuracion.U4_01_Depuracion&amp;quot; &amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;EditText&lt;br /&gt;
        android:id=&amp;quot;@+id/et&amp;quot;&lt;br /&gt;
        android:layout_width=&amp;quot;wrap_content&amp;quot;&lt;br /&gt;
        android:layout_height=&amp;quot;wrap_content&amp;quot;&lt;br /&gt;
        android:hint=&amp;quot;Introduce o século no que vives&amp;quot;&lt;br /&gt;
        android:inputType=&amp;quot;number&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;Button&lt;br /&gt;
        android:layout_width=&amp;quot;wrap_content&amp;quot;&lt;br /&gt;
        android:layout_height=&amp;quot;wrap_content&amp;quot;&lt;br /&gt;
        android:text=&amp;quot;Preme aquí&amp;quot;&lt;br /&gt;
        android:onClick=&amp;quot;onButtonClick&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/LinearLayout&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===O código Java da aplicación===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot; line enclose=&amp;quot;div&amp;quot; highlight=&amp;quot;18-22,38,42,48&amp;quot; &amp;gt;&lt;br /&gt;
package com.example.u4_01_depuracion;&lt;br /&gt;
&lt;br /&gt;
import android.app.Activity;&lt;br /&gt;
import android.os.Bundle;&lt;br /&gt;
import android.util.Log;&lt;br /&gt;
import android.view.Menu;&lt;br /&gt;
import android.view.MenuItem;&lt;br /&gt;
import android.view.View;&lt;br /&gt;
import android.widget.EditText;&lt;br /&gt;
import android.widget.Toast;&lt;br /&gt;
&lt;br /&gt;
public class U4_01_Depuracion extends Activity {&lt;br /&gt;
&lt;br /&gt;
	@Override&lt;br /&gt;
	protected void onCreate(Bundle savedInstanceState) {&lt;br /&gt;
		super.onCreate(savedInstanceState);&lt;br /&gt;
		setContentView(R.layout.activity_u4_01__depuracion);&lt;br /&gt;
		Log.e(&amp;quot;DEPURACIÓN&amp;quot;, &amp;quot;Mensaxe de erro&amp;quot;);&lt;br /&gt;
		Log.w(&amp;quot;DEPURACIÓN&amp;quot;, &amp;quot;Mensaxe de aviso&amp;quot;);&lt;br /&gt;
		Log.i(&amp;quot;DEPURACIÓN&amp;quot;, &amp;quot;Mensaxe de información&amp;quot;);&lt;br /&gt;
		Log.d(&amp;quot;DEPURACIÓN&amp;quot;, &amp;quot;Mensaxe de mensaxe de depuración&amp;quot;);&lt;br /&gt;
		Log.v(&amp;quot;DEPURACIÓN&amp;quot;, &amp;quot;Mensaxe de vervose&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	@Override&lt;br /&gt;
	public boolean onCreateOptionsMenu(Menu menu) {&lt;br /&gt;
		// Inflate the menu; this adds items to the action bar if it is present.&lt;br /&gt;
		getMenuInflater().inflate(R.menu.u4_01__depuracion, menu);&lt;br /&gt;
		return true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	public void onButtonClick(View v) {&lt;br /&gt;
		EditText et = (EditText) findViewById(R.id.et);&lt;br /&gt;
&lt;br /&gt;
		if (et.getText().toString().equals(&amp;quot;21&amp;quot;)) {&lt;br /&gt;
			Toast.makeText(this, &amp;quot;Tes os pes na terra &amp;quot;, Toast.LENGTH_SHORT).show();&lt;br /&gt;
			Log.i(&amp;quot;DEPURACIÓN BOTÓN&amp;quot;, &amp;quot;Dentro if&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
		} else if (et.getText().toString().equals(&amp;quot;&amp;quot;)) {&lt;br /&gt;
			Toast.makeText(this, &amp;quot;Non escribiches nada&amp;quot;, Toast.LENGTH_SHORT).show();&lt;br /&gt;
			Log.i(&amp;quot;DEPURACIÓN BOTÓN&amp;quot;, &amp;quot;Dentro else if&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
		} else&lt;br /&gt;
&lt;br /&gt;
		{&lt;br /&gt;
			Toast.makeText(this, &amp;quot;Estás noutro planeta&amp;quot;, Toast.LENGTH_SHORT).show();&lt;br /&gt;
			Log.i(&amp;quot;DEPURACIÓN BOTÓN&amp;quot;, &amp;quot;Dentro else&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Liñas 18-22&amp;#039;&amp;#039;&amp;#039;: A aplicación emite mensaxes a través dos métodos estáticos con distintos niveis de criticidade.&lt;br /&gt;
**A etiqueta (tag) é o primeiro campo.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Liñas 38,42,48&amp;#039;&amp;#039;&amp;#039;: emisión de mensaxes que nos axudan a saber porque parte do código se atopa a aplicación.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; -- [[Usuario:angelfg|Ángel D. Fernández González]] e [[Usuario:Carrion|Carlos Carrión Álvarez]] -- (2015).&lt;/div&gt;</summary>
		<author><name>Angelfg</name></author>
	</entry>
</feed>