在android中清除未接来电通知

时间:2014-10-07 14:17:20

标签: android

每当我们接听电话时,我们都会看到未接来电通知。有没有办法以编程方式删除android中的未接来电通知?

我们看到未接来电号码&它的数量。我们可以通过代码删除它们吗?

2 个答案:

答案 0 :(得分:0)

唯一的"合法"但是非常难看并且通常无用的方式来实现你想要的是向用户显示呼叫记录。我的意思是字面上显示(变得视觉,获得焦点)。如果你想这样做,请按照以下方式进行:

public static boolean showCallLog(Context context)
{
    try
    {
        Intent showCallLog = new Intent();
        showCallLog.setAction(Intent.ACTION_VIEW);
        showCallLog.setType(android.provider.CallLog.Calls.CONTENT_TYPE);
        context.startActivity(showCallLog);
        return true;
    }
    catch (Exception e)
    {
        Log.d("Couldn't show call log.", e.getMessage());
    }
    return false;
}

这种混乱背后的原因是,权威负责呼叫记录并通知用户未接来电(股票电话应用)的应用使用缓存值。为什么?因为整体表现。您需要以某种方式通知那些应用程序呼叫日志已更改(看到意味着已更改),并且应该更新它。如果所有设备上的所有此类应用程序都会收到广播以便刷新,那将是很好的,但据我所知,情况并非如此。

我希望有人会找到一种更好的方法来强制刷新手机应用程序。

答案 1 :(得分:-1)

试试这段代码:

public void clearNotification() {
        NotificationManager notificationManager = (NotificationManager) mContext
                .getSystemService(Context.NOTIFICATION_SERVICE);
        notificationManager.cancel(NOTIFICATION_ID);
    }

如果您有不同的通知需要取消,则必须保存用于创建通知的ID。