【发布时间】:2021-03-11 19:46:27
【问题描述】:
在我的代码 sn-p 中:
val uri: Uri = TvContractCompat.Channels.CONTENT_URI
context.contentResolver.query(uri, null, null, null, null)?.let { cursor->
if(cursor.count > 0) {
cursor.moveToFirst()
do {
val channel = Channel.fromCursor(cursor)
} while (cursor.moveToNext() && cursor.isLast.not())
}
}
我收到以下错误消息:
2021-03-11 20:32:29.509 7285-7285/com.example.tvapp E/AndroidRuntime: 致命例外:主要 进程:com.example.tvapp,PID:7285 java.lang.SecurityException:内容不允许选择://android.media.tv/channel 在 android.os.Parcel.createException(Parcel.java:1950) 在 android.os.Parcel.readException(Parcel.java:1918) 在 android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:183) 在 android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:135) 在 android.content.ContentProviderProxy.query(ContentProviderNative.java:418) 在 android.content.ContentResolver.query(ContentResolver.java:802) 在 android.content.ContentResolver.query(ContentResolver.java:752) 在 android.content.ContentResolver.query(ContentResolver.java:710)
在我的清单中我已经有了:
<uses-permission android:name="com.android.providers.tv.permission.READ_EPG_DATA" />
<uses-permission android:name="com.android.providers.tv.permission.ACCESS_ALL_EPG_DATA"/>
由于我没有向 EPG 写入任何内容,因此我没有其他权限:
无论如何,在获得该许可的情况下,我得到了那个错误。
顺便说一句。当我从我的 /system 文件夹(更高的访问级别)运行应用程序时,代码正在运行并且我得到了频道
【问题讨论】:
标签: android-tv android-contentresolver