在 LG G2 Google TV 上,任何查询频道列表提供商的尝试都会引发此异常:“无效 URI:content://com.google.android.tv.provider/channel_listing”
官方频道更改示例和我自己的代码都是如此,我已经在 Sony GTV buddy box 上演示了这两个代码。
我在这里错过了什么吗?有没有我不知道的LG酱?还是这个简单明了的 LG 错误?
在 LG G2 Google TV 上,任何查询频道列表提供商的尝试都会引发此异常:“无效 URI:content://com.google.android.tv.provider/channel_listing”
官方频道更改示例和我自己的代码都是如此,我已经在 Sony GTV buddy box 上演示了这两个代码。
我在这里错过了什么吗?有没有我不知道的LG酱?还是这个简单明了的 LG 错误?
更新:将您的 uri 更改为:
content://com.google.tv.mediadevicesapp.ChannelListingProvider/channel_listing
还:
将所需权限从 com.google.android.tv.permission.READ_CHANNELS 更改为 com.google.android.tv.mediadevices.permission.READ_STREAMS
您返回的数据也会有所不同:
“channel_uri”更改为“url”“channel_name”更改为“name”“channel_number”更改为“channelNumber”“呼号”更改为“subName”
int version = 0;
try {
Class cl = Class.forName("com.google.android.tv.Version");
version = cl.getField("GTV_SDK_INT").getInt(null); }
catch (Exception ex) {}
String contentUri;
if (version == 0) {
// We're on old (Pre-V3 GoogleTV)
contentUri = "content://com.google.android.tv.provider/channel_listing";
} else {
// We're on V3 or newer.
contentUri = "content://com.google.tv.mediadevicesapp.ChannelListingProvider/channel_listing";
// or, if you're using the framework library:
// Uri contentUri = com.google.android.tv.provider.ChannelListingContract.Channels.CHANNEL_LISTING_URI
}
/*
Column names are:
callsign
channel_name
channel_number
channel_uri
data_source
*/
根据 Google 发布的代码示例,我无法进行任何工作。但我偶然发现了这一点,现在它可以工作了:
似乎如果你有错误的 Uri 或列名,你会得到一个空游标。