Debe usar los receptores de difusión en su aplicación.
Puede administrarlo siguiendo los siguientes pasos:
Detalles del archivo AndroidManifest.xml:
- Cómo obtener una contraseña de Wi-Fi a través de un teléfono Android rooteado
- ¿Cuál es el mejor Android para al menos 8000 en Filipinas?
- ¿Cuántas veces puedo rootear mi Android?
- ¿Pueden los OEM eliminar Google Play? Si es así, ¿por qué Samsung no lo quitó y construyó el suyo?
- ¿Ha tenido problemas de batería desde que actualizó su dispositivo Android a Android N (7.0)?
1. Declarar receptor en AndroidManifest
< receptor android: name = “. IncomingCall “>
<action android: name = " android.intent.action.PHONE_STATE ” />
2. Otorgue permiso de lectura del estado del teléfono en AndroidManifest
Código completo para el archivo AndroidManifest.xml:
<manifest xmlns: android = "Ankit"
package = “com.androidexample.broadcastreceiver”
android: versionCode = “1”
android: versionName = “1.0”>
<aplicación
android: allowBackup = “true”
android: icon = “@ drawable / ic_launcher”
android: label = “@ string / app_name”
android: theme = “@ style / AppTheme”>
<actividad
android: name = “com.androidexample.broadcastreceiver.BroadcastPhoneStates”
android: label = “@ string / app_name”>
<usa-sdk
android: minSdkVersion = “8”
android: targetSdkVersion = “17” />
Detalles del archivo IncomingCall.java:
He hecho un receptor de eventos de difusión en este archivo
1. Creó la clase IncomingCall con la clase BroadcastReceiver extendida
IncomingCall de clase pública extiende BroadcastReceiver
2. Crear receptor de método ()
public void onReceive (contexto de contexto, intento de intención)
3. Crear oyente para leer el estado del teléfono
// objeto de clase de MANAGER DE TELEFONÍA para registrar un listado
TelephonyManager tmgr = (TelephonyManager) contexto
.getSystemService (Context.TELEPHONY_SERVICE);
// Crear Listner
MyPhoneStateListener PhoneListener = new MyPhoneStateListener ();
// Registrar escucha para LISTEN_CALL_STATE
tmgr. escuchar ( PhoneListener , PhoneStateListener. LISTEN_CALL_STATE );
4. Crear clase de lista de estado del teléfono
Cuando llega una nueva llamada, el método onCallStateChanged llama
clase privada MyPhoneStateListener extiende PhoneStateListener {
public void onCallStateChanged (int estado, String entranteNúmero) {
// Log.d (“MyPhoneListener”, estado + “número de entrada:” + número de entrada);
// state = 1 significa cuando el teléfono está sonando
if (estado == 1) {
Cadena msg = “Nuevo evento de llamada telefónica. Número entrante:” + entranteNúmero;
int length = Toast.LENGTH_LONG;
Toast toast = Toast.makeText (pcontext, msg, duración);
tostada.show ();
}
}
}
Espero que pueda administrar sus llamadas ahora con su aplicación.
Gracias