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?
- Los puntos de interrupción de SampleSyncAdapter no funcionan
- Android gradle ndk jni construir con biblioteca externa y depuración nativa (ARToolkit)
- No es capaz de depurar la aplicación en Android Studio
- ¿Hay alguna manera de usar Webkit Inspector Remote Debugging en iPad?
- Visual studio 2015, el comando android 'run-as' falló
- Cambiar valores constantes al crear una edición de lanzamiento
- No se puede depurar la aplicación en el dispositivo Android - Android Studio 2.0
- Habilitar mensajes de registro de dispositivo real en Logcat
- Cómo depurar un sitio web en Android?
- Depuración en caliente con Android
- ¿Cómo depurar al ejecutar pruebas Robolectric en Android Studio?
- Asmack - recibir mensajes XML personalizados ||
- No se puede implementar Xamarin aplicación correctamente
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.
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í…
- Inicie el emulador O conecte el teléfono a través del cable USB
- Seleccione el icono de
Debug
como normalmente. - Espera a que empiece tu aplicación
- Ir a la pantalla de inicio
- 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 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>
- Achartengine: Insertar fechas como valores X en
- Cuadro de diálogo Progreso al iniciar una nueva actividad