Android开发合并相同通话记录并显示通话记录条数

原创 2015年07月07日 09:15:47

CommonUtil.java

public class CommonUtil {

public static List<ContactInfo> handleList(List<ContactInfo> list) {
Map<String, Integer> map = new HashMap<String, Integer>();
ArrayList<ContactInfo> result = new ArrayList<ContactInfo>();
for (int i = 0; i < list.size(); i++) {
int k = 1;
for (int j = i + 1; j < list.size(); j++) {
if (list.get(i).getPhoneNum().equals(list.get(j).getPhoneNum())) {
k++;
} else {
continue;
}
}
if (!map.containsKey(list.get(i).getPhoneNum()))
map.put(list.get(i).getPhoneNum(), k);
}
Set<Entry<String, Integer>> entrySet = map.entrySet();
Iterator<Entry<String, Integer>> iterator = entrySet.iterator();
while (iterator.hasNext()) {
for (int i = 0; i < map.size(); i++) {
Entry<String, Integer> next = iterator.next();
for (int j = 0; j < list.size(); j++) {
if (next.getKey().equals(list.get(j).getPhoneNum())) {
list.get(j).setNumber(String.valueOf(next.getValue()));
result.add(list.get(j));
break;
}
}


}


}
return result;
}

}


ContactInfo.java

package com.ran.wedial.info;


public class ContactInfo {


private Long id;
private String name;
private String formattedNumber;
private String phoneNum;
private String pinyin;
private int type;
private String date;
private String Numbers;


public Long getId() {
return id;
}


public void setId(Long id) {
this.id = id;
}


public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public String getFormattedNumber() {
return formattedNumber;
}


public void setFormattedNumber(String formattedNumber) {
this.formattedNumber = formattedNumber;
}


public String getPhoneNum() {
return phoneNum;
}


public void setPhoneNum(String phoneNum) {
this.phoneNum = phoneNum;
}


public String getPinyin() {
return pinyin;
}


public void setPinyin(String pinyin) {
this.pinyin = pinyin;
}


public int getType() {
return type;
}


public void setType(int type) {
this.type = type;
}


public String getDate() {
return date;
}


public void setDate(String date) {
this.date = date;
}


public void setNumber(String Numbers) {
this.Numbers = Numbers;
}


public String getNumbers() {
return Numbers;
}
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Android 6.0 Phone 多方通话流程

写在前面的话本文主要分析Voice Call多方通话的流程,分析GSM和CDMA在多方通话不同的地方,研究的代码是Android 6.0的,目前只关注framework层。 1. 多方通话的概念下面引...

android 通话记录去重查询方法

近日研究通话记录 查询数据去重,一直在研究 getContentResolver().query这个方法,对其中的几个参数也小研究了一下。找到了通话记录去重的办法。  如果只取一列数据可以用disti...

Android 通话记录列表同一号码显示多次的问题

上几天遇到了一个比较怪的问题,用一个号码给测试机拨号,然后再用测试机给刚才的机器拨号,然后就是各种通话,然后查看通话记录列表,有意思的事情发生了,相同通话类型的通话记录是合并在了一起,但是不同通话类型...

android 通话记录条数的限制

在frameworks\base\core\java\android\provider下面有CallLog.java,这支文件里,每当完成一通电话向call表中插入一条callLog记录后,调用rem...

Android开发:还原通讯录、历史通话记录、短信息记录(insert方法)

1.插入通讯录 package com.dm.restroe; import java.util.ArrayList; import android.content.ContentUris;...

Android 7.1.1 Dialer中通话记录显示详解

这两天在看通话记录相关问题,顺便跟踪了Dialer中的通话记录是怎么显示出来的,在这和大家分享下。当有来电或去电时,calllog会被插入到calllog.db的数据中去,具体可以参考《Android...

Android 6.0 通话记录生成保存和读取显示

这段时间在搞一个隐私联系人功能,没办法又从新梳理了一下通话记录的生成和展现过程,顺便贴出来跟大家分享一下。一、通话记录的保存分为七步: 1、CallsManager.java 的构造函数中 //...

Android 通讯录开发之通话记录

Android 通讯录开发之通话记录删除通讯记录![这个是通讯录数据库contacts的通话记录calls表](http://img.blog.csdn.net/20150504105101656)其...

android 获得通话记录

内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)