我目前正在试图找出什么
CallLog.Calls.NEW
的装置。
文档说:
是否有通话 确认
(http://developer.android.com/reference/android/provider/CallLog.Calls.html#NEW)。我试图重现这个。
我拨打了另一部电话的电话,并在电话开始振铃时挂了电话。我会期待什么?包含TYPE = OUTGOING_TYPE
和NEW = 0
的条目,对吧?但是NEW
是1.那对我来说真的没有任何意义......
有什么想法吗?
答案 0 :(得分:2)
查看其来源here。
调用始终添加新值1:
values.put(NEW, Integer.valueOf(1));
可能在电话通话日志应用程序或通话通知中有一种方法将其设置为零。顺便说一句,我没有找那个。
答案 1 :(得分:2)
我不确定,但我的猜测是,在您的测试场景中,您拨打的电话会有TYPE = INCOMING_TYPE
和NEW = 0
,因为该电话尚未确认该电话。在那部手机上你会看到通知栏中的“未接来电”图标。该电话会被视为NEW
。
答案 2 :(得分:2)
在模拟器中,无论是传入还是传出,所有呼叫都设置为1。 然后,如果您单击呼叫日志应用程序中的呼叫,则该单个呼叫将设置为零。 当您激活未接来电通知时,此字段也会设置为零。
因此,此字段的含义类似于“未读”标记,大多数电子邮件程序都会使用该标记来标记刚刚读到的电子邮件。在这种情况下,添加到呼叫日志中的所有呼叫都标记为NEW = 1,当它们被确认(即“读取”)时,标志被删除(NEW = 0)。
当然,仅在未接来电的情况下,这是实用的。
答案 3 :(得分:0)
它是字符串。它似乎被用作地图中的关键:
http://codesearch.google.com/codesearch?hl=pl&lr=&q=package%3Aandroid.git.kernel.org+Calls.NEW
文档描述了此密钥的用途。
通话值为:
public static final int INCOMING_TYPE = 1;
public static final int OUTGOING_TYPE = 2;
public static final int MISSED_TYPE = 3;
答案 4 :(得分:0)
在我的手机上(摩托罗拉Droid2): 对于所有MISSED_TYPE调用,NEW = 0 对于所有INCOMING_TYPE和OUTGOING_TYPE调用,NEW = 1。
Atrix和HTC Inspire似乎也是如此。
答案 5 :(得分:0)
可能已经太晚了......我想出来了,问题是如果有人打电话给你,你错过了那个电话,然后没有回电话,
CallLog.Calls.NEW = 1将被传递..
现在,如果您要回拨该号码,那么
CallLog.Calls.NEW = 0将被传递..
如果您拨打一个号码并且某个号码正在返回
,则所有类型标志都是相同的答案 6 :(得分:0)
我已经解决了同样的问题。我认为NEw只是一个标志,表示此呼叫尚未处理。就像一个未接来电,从NEW = 1开始,但是当你设置一个呼叫应用程序时,错过了呼叫已更改为NEW = 0,并且通知栏中的图标被取消。