Ver la Versión Completa : Presentación
Hola: Estoy empezando a programar con Android Studio, ya hice algunas app siguiendo un tutorial y quiero empezar desarrollando algo sencillo.
En esta primera aplicación, me gustaría colocar algunos datos como la dirección de un sitio web, que ya sé cómo se hace y un teléfono al que el usuario puede llamar. Mi pregunta es si existe la posibilidad de que al presionar sobre el número de teléfono se active la llamada directamente (algo similar a lo que sucede con la url)
Muchas gracias
kriogeN
31/01/16, 09:29:11
Hola y bienvenido.
Puedes hacerlo de 2 formas:
String numero = "tel:" + telefono.getText().toString();
Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse(numero));
startActivity(intent);
O:
String numero = "tel:" + telefono.getText().toString();
Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse(numero));
startActivity(intent);
El primero hace la llamada directamente, necesita el permiso CALL_PHONE definido en el Manifest y solicitarlo en tiempo de ejecución si es Android 6.0 o superior.
El segundo muestra la aplicación de teléfono del móvil con el número ya escrito, a falta de que el usuario pulse el botón llamar. No requiere permisos.
Yo siempre uso la segunda opción, ya que la gente es muy reticente a instalar aplicaciones que tengan el permiso "Puede hacer llamadas sin que intervenga el usuario".
Dexafree
31/01/16, 10:27:38
Iba a comentar exactamente lo mismo que kriogeN, que la forma recomendada es abrir el Dialer con el número ya puesto, para que el usuario confirme que quiere hacer la llamada.
Incluso Whatsapp cambió la forma de hacerlo hace unos años. :ok:
Genial, muchas gracias, acabo de probarlo y va perfecto. Gracias también por marcar la diferencia entre hacer la llamada directamente y enviar a la aplicación. Las preferencias de los usuarios no están en ningún manual, es un dato muy valioso.
vBulletin® v3.8.1, Copyright ©2000-2025, Jelsoft Enterprises Ltd.