Mi proyecto es principalmente una aplicación web. Ahora tengo una aplicación de Android con un widget de pantalla de inicio y me gustaría abrir una página web en el navegador integrado en algunas acciones de usuario. Eso es fácil. En MyAppWidgetProvider.onUpdate creo un nuevo intento:Abrir una url en el navegador de Android, evitar varias pestañas
Intent intent = new Intent("android.intent.action.VIEW",
Uri.parse("http://my.example.com/"));
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
views.setOnClickPendingIntent(R.id.text, pendingIntent);
Por desgracia, se abre una ventana del explorador/pestaña nueva cada vez que el usuario hace clic en el widget. Mi página contiene algunos sofisticados AJAX/javascript ejecutándose en segundo plano y enviando regularmente solicitudes http. Así que termino teniendo 8 pestañas que contienen la misma página y enviando continuamente 8 veces la cantidad de solicitudes http.
¿Hay alguna manera, por ejemplo,? acción diferente o parámetros adicionales para evitar abrir nuevas pestañas?
Como solución alternativa, ahora estoy pensando en crear una nueva actividad que contenga un WebView, pero me gustaría evitar esta complejidad.
Gracias! ¡EXTRA_APPLICATION_ID ha estado incluso disponible desde API nivel 3 (Android 1.5)! – geekQ
'getPackageName()' funciona parcialmente solo en mi caso (Tablet Android 4.1.1). Lanzó el navegador con la misma pestaña, pero presiona ATRÁS, el navegador no vuelve a la página anterior, simplemente finalízala. Por [esto] (http://stackoverflow.com/questions/9902225/browser-extra-application-id-do-not-work-in-the-tablet-do-you-know-other-work-a/9917548 # 9917548), funciona !!!! – Yeung
Funcionó perfectamente. Usé intent.putExtra (Browser.EXTRA_APPLICATION_ID, getApplicationContext(). GetPackageName()); – zappullae