我想根据来电号码的某些标准创建一个弹出式警报。无论如何,我根据标准创建了一条 toast 消息。但是我坚持创建警报。请帮忙。
//IncomingNumberCheck.java
public class IncomingNumberCheck extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(TelephonyManager.EXTRA_STATE_RINGING)) {
String incomingNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);
Toast.makeText(context, networkProvider(incomingNumber), LENGTH_LONG).show();
} else if(intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(TelephonyManager.EXTRA_STATE_IDLE) || intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(TelephonyManager.EXTRA_STATE_OFFHOOK)) {
Toast.makeText(context, "Call ended", LENGTH_LONG).show();
}
}
public String networkProvider(String incomingNumber) {
if(incomingNumber.startsWith("some string") || incomingNumber.startsWith("some string")) {
return "Particular provider name";
} else {
return "Other user";
}
}
}
最佳答案
只是一个疯狂的想法... 尝试使用服务来监听来电,然后从该服务创建对话。 看看这个... Alert dialog from Android service
关于android - 收到来电时弹出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58534372/