如何过滤来电(黑名单) - 没有反射

时间:2012-07-18 06:44:35

标签: android blacklist

我想知道是否有一种方法可以过滤(阻止)Android上的来电(考虑2.1及以上)。我发现使用反射的解决方案,但它似乎不是非常干净和可靠的解决方案。是否有任何标准或谷歌推荐的方法来做到这一点?

更新:任何人?

1 个答案:

答案 0 :(得分:2)

使用以下广播接收器获取传入的电话号码,并将其与您创建的过滤器列表中的号码进行比较

@Override
public void onReceive(Context context, Intent intent) {
    Bundle extras = intent.getExtras();
    if (extras != null) {
        String state = extras.getString(TelephonyManager.EXTRA_STATE);
        Log.w("DEBUG", state);
        if (state.equals(TelephonyManager.EXTRA_STATE_RINGING)) {
            String phoneNumber = extras
                    .getString(TelephonyManager.EXTRA_INCOMING_NUMBER);
            Toast.makeText(context, phoneNumber, 2000).show();
            Log.w("DEBUG", phoneNumber);
        }
    }
}

希望它会有所帮助。您需要通过应用程序的用户界面在黑名单中创建一个数字列表。