android - 收到来电时弹出

标签 android

我想根据来电号码的某些标准创建一个弹出式警报。无论如何,我根据标准创建了一条 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/

相关文章:

android - 无法在 Eclipse 的 SQLite 管理器插件中打开数据库文件?

java - 安卓工作室错误 : Unfortunately “App” has Stopped

android - 具有国家代码的值的资源目录名称无效

java - 如何查看 libgdx 中是否触摸了纹理?

android - Android Youtube视频上传

java - 我可以为不同的包写入 Android SharedPreference 吗?

javascript - 我该如何处理 "overload"websocket?

android - 在 Android 上使用 ListFragment 的问题

java - 现有应用程序(java/eclipse/android)到其他平台

android - 如何控制ListView的垂直滚动