Cómo depurar con Android App Widget?

Para la actividad normal, puedo establecer algunos puntos de interrupción y hacer clic en F11 en Eclipse para depurar. Sin embargo, no funciona cuando desarrollo un widget de aplicación. Entonces, ¿cómo puedo depurar?

Aquí puede encontrar una buena respuesta:

Todo lo que necesita para depurar su código de widget es casi lo mismo que lo que hace para las aplicaciones normales. Sólo tienes que seguir los siguientes pasos:

1. Presione "depurar" en el menú de eclipse (o "ejecutar" no parece importar)

2. Una vez que el widget apk esté sincronizado e instalado en su emulador / dispositivo, cambie su espacio de trabajo eclipse al modo DDMS. Puede hacer esto presionando el botón "DDMS" etiquetado en su esquina superior derecha o si no puede encontrarlo, a continuación, vaya a "Ventana-> Abrir Perspectiva-> DDMS".

3. Seleccione el nombre de proceso de su widget en la lista de procesos mostrados. De forma predeterminada, esta lista aparece en la parte superior izquierda de la ventana de DDMS. (Vea la captura de pantalla abajo). Si no puede ver el nombre de proceso de su widget en la lista, es posible que el widget no se agregue a la pantalla de inicio. Así que, hazlo.

4. Presione el botón de depuración verde encima de la lista de procesos (ver captura de pantalla abajo)

5. Y eso es todo. Ahora, si usted hubiera puesto un punto de interrupción en el código, haga algo que ejecute esa pieza del código.

Introduzca aquí la descripción de la imagen

Supongo que con "App Widget" quiere decir que los widgets que los usuarios pueden agregar a sus pantallas de inicio presionando largo tiempo en el fondo de pantalla?

Si el archivo AndroidManifest.xml está configurado correctamente, puede depurar estos widgets igual que cualquier otra aplicación de Android.

Sin embargo, tenga en cuenta que primero debe agregar el widget a la pantalla principal.

Una vez que haya hecho esto, debería ver el proceso de su widget listado en la perspectiva del modo DDMS en Eclipse. Puede adjuntar el depurador y depurar su código.

Android Studio

Es realmente simple. Simplemente configure sus puntos de depuración dentro de su clase que extends AppWidgetProvider .

De aquí…

  1. Inicie el emulador O conecte el teléfono a través del cable USB
  2. Seleccione el icono de Debug como normalmente.
  3. Espera a que empiece tu aplicación
  4. Ir a la pantalla de inicio
  5. Agregue su Widget O vaya a la pantalla con su Widget ya en él

A partir de este punto, si tiene un punto de interrupción dentro del onUpdate(...) , se iniciará la depuración del widget

Eclipse

La respuesta de StarsSky

Android Studio

No encontré una forma "estructurada" para depurar explícitamente un Widget de aplicación.

Mi solución:

Asegúrate de tener una Actividad en tu proyecto, por lo general tendrás al menos una Actividad de Configuración, pero si no, solo haz una Actividad ficticia que no tenga que hacer nada.

En su Manifiesto, añada esta Actividad y márquela como actividad de lanzamiento:

 <activity android:name=".activity.SettingActivity" android:label="@string/setting_name"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> 

Ahora debes colocar tu punto de interrupción donde quieras depurar, y lanzar tu aplicación usando el Introduzca aquí la descripción de la imagen botón. Ahora el código de toda la aplicación se encuentra bajo la sesión de depuración y el depurador se detendrá en cualquier punto de interrupción, incluido el widget.

Nota: antes de la producción, elimine el filtro de intención de lanzamiento de su manifiesto, si no quiere decir que esta Actividad se inicie directamente desde la barra de inicio del dispositivo

  <activity android:name=".activity.**SettingActivity**" android:label="@string/setting_name"> <!--<intent-filter>--> <!--<action android:name="android.intent.action.MAIN"/>--> <!--<category android:name="android.intent.category.LAUNCHER"/>--> <!--</intent-filter>--> </activity> 
  • Cómo ver la salida del registro de consola en la galaxia S2 de Samsung
  • Diferentes almacenes de claves de depuración en Eclipse en una base por proyecto?
  • Android / Eclipse: ¿dónde puedo encontrar la carpeta /Users/USER_NAME/.android/debug.keystore?
  • La depuración del navegador Android 2.3 se bloquea
  • Depuración de Android: java.lang.ArrayIndexOutOfBoundsException
  • Depuración del Widget de Android en Intellij IDEA
  • Cómo aumentar el número de líneas (nivel de registro) en Logcat
  • "Fuente no encontrada", depuración de la aplicación Android en Eclipse
  • ¿Por qué no puedo acceder al punto de interrupción cuando empiezo a depurar la aplicación Android de Xamarin?
  • Reconectar para depurar proceso en Android usando Eclipse con ADT
  • Al construir el proyecto de android con el comando de la depuración de la hormiga, mi apk tiene la palabra depuración atada al nombre. ¿Cómo lo cambio?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.