我想通过 sim 插槽号获取通话记录历史记录。像这张图片:
为此,我搜索了许多网站,直到我得到:
Cursor managedCursor = getActivity().managedQuery(CallLog.Calls.CONTENT_URI, null,
null, null, strOrder);
int number = managedCursor.getColumnIndex(CallLog.Calls.NUMBER);
int type = managedCursor.getColumnIndex(CallLog.Calls.TYPE);
int date = managedCursor.getColumnIndex(CallLog.Calls.DATE);
int duration = managedCursor.getColumnIndex(CallLog.Calls.DURATION);
int account = 0;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
account = managedCursor.getColumnIndex(CallLog.Calls.PHONE_ACCOUNT_COMPONENT_NAME);//for versions above lollipop
ac_id = managedCursor.getColumnIndex(CallLog.Calls.PHONE_ACCOUNT_ID);
}
目前根据 android 文档获取 PHONE_ACCOUNT_COMPONENT_NAME 和 PHONE_ACCOUNT_ID 但如何使用它来获取 sim 插槽
按照这个链接:
Samsung android 6.0 如何获取带有 SIM 卡插槽 ID 的双卡通话记录?
但没有一个对我有用。
我使用 SubscriptionManager 类在 api>21 中的双 sim 卡中获得了当前 sim 卡的名称,但无法在通话记录中检查它。
请建议我更好的方法来做到这一点。