在安卓设备上记录通话日志

6

我创建了一个虚拟呼叫者,但目前遇到的问题是如何编写通话日志。

请问有人能够解释一下如何编写通话日志以及需要哪些权限吗?

我在How can I update the contents of an entry in the Call Log?找到了答案,但在那个答案中,术语“OsmoService”未被定义。我不明白它是预定义类还是用户定义的类。

非常感谢您的帮助。谢谢!


https://dev59.com/_VbUa4cB1Zd3GeqPDOoi - KOTIOS
2个回答

13

希望这能帮到你:

在你的AndroidManifest.xml中添加以下权限:

<uses-permission
    android:name="android.permission.READ_CALL_LOG"/>
<uses-permission
    android:name="android.permission.WRITE_CALL_LOG"/>

代码:

ContentValues values = new ContentValues();
values.put(CallLog.Calls.NUMBER, number);
values.put(CallLog.Calls.DATE, System.currentTimeMillis());
values.put(CallLog.Calls.DURATION, 0);
values.put(CallLog.Calls.TYPE, CallLog.Calls.OUTGOING_TYPE);
values.put(CallLog.Calls.NEW, 1);
values.put(CallLog.Calls.CACHED_NAME, "");
values.put(CallLog.Calls.CACHED_NUMBER_TYPE, 0);
values.put(CallLog.Calls.CACHED_NUMBER_LABEL, "");
context.getContentResolver().insert(CallLog.Calls.CONTENT_URI, values);

你花时间回答问题,非常感谢。但是你的回答似乎是添加新联系人。我实际想要的是插入通话记录(来电记录)。谢谢伙计。 - Sanjay Joshi

-1

请查看此链接以访问通话记录

this

访问此内容的权限为

<uses-permission android:name="android.permission.READ_CALL_LOG" />

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接