【发布时间】:2026-02-04 20:10:02
【问题描述】:
我的应用在通话记录中提供了一个号码列表。
不幸的是,我遇到了一个小问题。我的应用程序分别列出了下面的数字(即使它们是相同的数字)。有没有办法在我的应用程序中将其分组为一个数字? 我想为所有国家/地区的数字应用一种方法。
例子:
754-3010(本地)
(541) 754-3010(国内)
+1-541-754-3010(国际)
1-541-754-3010(在美国拨打)
001-541-754-3010(从德国拨打)
我的应用中的代码:
Cursor managedCursor = managedQuery( CallLog.Calls.CONTENT_URI,null, null,null, null);
int number = managedCursor.getColumnIndex( CallLog.Calls.NUMBER );
List<String> list = new ArrayList<>();
while ( managedCursor.moveToNext() ) {
String phNumber = managedCursor.getString( number );
list.add(phNumber);
}
我在我的应用中显示list。
【问题讨论】:
-
是的,但如果您需要帮助,您需要提供更多背景信息。
-
我只能看到一个国内电话号码 - 其他的都是通过添加不同的前缀衍生而来的。
-
@MaxZoom 完全正确。问题是在我的应用程序中,这些数字分别显示(好像它们不同)。我只想显示一个数字。例如显示
(541) 754-3010 -
看来你需要过滤没有国内字的行。但是上面列出的代码不允许提供具体的解决方案。
-
@bradimus 我编辑了这个问题。
标签: java