要么你使用debug查看变量值,要么你直接把变量值打印到控制台
https://jingyan.baidu.com/article/359911f55cda7357fe0306d0.html
解决方法
1、使用自带的Log直接将变量输出到控制台
如:
设置一个常量
先设置一个字符串类型的常量,为后续过滤无关信息做准备。
private static final String TestApp="TestApp";
然后在希望输出语句的地方加一句
Log.d(TestApp,"HelloWorld");
如有问题及时沟通
方法一:在代码String json = gson.toJson(contactList);行后面追加一行输出语句:
System.out.println("contactList对应的json数据是:" + json);
方法二:在代码String json = gson.toJson(contactList);行前面打上断点,然后以debug模式启动,在当前类中写个主方法,调用cleanContactList方法(此时需要将该方法声明为静态方法,即在void前加static关键字),然后鼠标放到contactList字段上,即可查看contactList对应的信息
日志打印出来看存储的是什么
String json = gson.toJson(contactList)
把这个json打印到日志文件,然后你查看日志文件
断点看;
打印出来看
无法通过一个查询获取所需数据。对于每个联系人ID,您必须查询其数据目录:
Uri contactUri = ContentUris.withAppendedId(Contacts.CONTENT_URI, contactId);
Uri dataUri = Uri.withAppendedPath(contactUri, Contacts.Data.CONTENT_DIRECTORY);
然后,您应该针对此URI运行查询,通过StructuredName.CONTENT_ITEM_TYPE过滤MIMETYPE以获取给定ID的StructuredName。
Uri dataUri = Uri.withAppendedPath(contactUri, Contacts.Data.CONTENT_DIRECTORY);
Cursor nameCursor = getActivity().getContentResolver().query(
dataUri,
null,
Data.MIMETYPE+"=?",
new String[]{ StructuredName.CONTENT_ITEM_TYPE },
null);