android - por - como poner chrome como navegador predeterminado
Android tiene la intenciĆ³n de abrir el navegador preferido del usuario (5)
He estado tratando de descubrir cómo crear un intento que abra el navegador preferido del usuario sin especificar la URL. Sé cómo abrirlo dando una URL específica como esta:
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(android.net.Uri.parse("http://www.google.com"));
context.startActivity(intent);
No quiero abrir el navegador a ninguna página en particular, solo la página principal configurada o la página en la que estuvo el usuario por última vez. He pensado en buscar la página de inicio dentro de la aplicación pero no puedes hacerlo con la aplicación de navegador predeterminada porque es privada. ¿Alguien sabe de una manera de hacer esto?
Así es como lo hice:
String packageName = "com.android.browser";
String className = "com.android.browser.BrowserActivity";
Intent internetIntent = new Intent(Intent.ACTION_VIEW);
internetIntent.addCategory(Intent.CATEGORY_LAUNCHER);
internetIntent.setClassName(packageName, className);
mHomeActivity.startActivity(internetIntent);
Si no tiene un conjunto de página de inicio, se abrirá una página en blanco (al menos en Android 2.1).
Consulte este artículo para obtener detalles sobre la intención implícita en Android
Intent sendIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.maidofknowledge.com"));
Intent chooser = Intent.createChooser(sendIntent, "Choose Your Browser");
if (sendIntent.resolveActivity(getPackageManager()) != null) {
startActivity(chooser);
Esta es una respuesta tardía, pero parece que esta funcionalidad está disponible en API 15:
Intent browser = Intent.makeMainSelectorActivity(
Intent.ACTION_VIEW,
Intent.CATEGORY_APP_BROWSER);
startActivity(browser);
La URL de la página principal especificada por el usuario se almacenará en las preferencias de cualquier aplicación de navegador que esté usando. Con el modelo de ''sandbox'' de Androids para aplicaciones, no tendrás acceso a esto a menos que la aplicación tenga un proveedor de contenido que permita el acceso. Además, el proveedor de contenido será diferente entre las aplicaciones del navegador y tendrá dificultades para cubrir las que sí existen.
¿Has intentado abrir una página web que intenta actualizar la URL de la página principal de los usuarios mediante el uso de JavaScript?
Uri uri = Uri.parse("www.google.com");
Intent intent = new Intent(Intent.ACTION_VIEW,uri);
// Create and start the chooser
Intent chooser = Intent.createChooser(intent, "Open with");
startActivity(chooser);
Este código crea una intención de abrir el navegador especificado por el usuario.