getcontentresolver() 在服务中返回 null
Posted
技术标签:
【中文标题】getcontentresolver() 在服务中返回 null【英文标题】:getcontentresolver() returns null in a service 【发布时间】:2012-02-06 19:57:09 【问题描述】:在下面的代码中,getcontentresolver()
为空,但在服务的onCreate()
中有效,但在服务中的函数中无效。为什么?请帮助我..谢谢
final Uri uri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
final String[] cursor_cols = MediaStore.Audio.Media._ID,
MediaStore.Audio.Media.ARTIST, MediaStore.Audio.Media.ALBUM,
MediaStore.Audio.Media.TITLE, MediaStore.Audio.Media.DATA ;
final String where = MediaStore.Audio.Media.IS_MUSIC + "=1";
cursor = getContentResolver()
.query(uri, cursor_cols, where, null, null);
【问题讨论】:
你是在调用你的Service
的onCreate()
方法之前 执行的函数吗?例如。从构造函数或类似的东西调用它?
只在启动服务后没有,只是在第一个活动中启动服务
您应该添加显示类以及在这种情况下如何调用函数的代码。
public ArrayList确保您与设备的 USB 连接处于 PC 模式,而不是 USB 大容量存储
如果是大容量存储,则返回null
【讨论】:
以上是关于getcontentresolver() 在服务中返回 null的主要内容,如果未能解决你的问题,请参考以下文章
getContentResolver().query()方法selection参数使用详解(转)
有没有其他方法可以在不使用`getContentResolver()`的情况下访问联系人?
Context.managedQuery()和context.getContentResolver()获取Cursor关闭注意事项
在 getContentResolver().query 中为 Uri.parse("content://sms/inbox") 设置日期标准