홈 화면에서 프로그램을 선택하려고하는데 '지금 열 수 없습니다'라는 메시지가 계속 표시됩니다.Android TV의 홈 화면에서 프로그램을 시작할 수 없습니다.
다음은 내 매니페스트이며 TV 프로그램에 내 프로그램이 추가되는 방식입니다. 의도 uri, 내부 공급자 ID 및 콘텐츠 ID를 철저히 설정합니다.
로그를 기반으로하면 내 수신자가 실행되지 않는 것처럼 보입니다. 텔레비전 제공자에 프로그램을 추가
등급 :
private static final Uri BASE_URI = Uri.parse(SCHEME + "://" + APPS_LAUNCH_HOST);
public static final String START_APP_ACTION_PATH = "startapp";
public static final String PLAY_VIDEO_ACTION_PATH = "playvideo";
public void addProgram(Movie movie) {
...
PreviewProgram.Builder builder = new PreviewProgram.Builder()
.setChannelId(channelId)
.setTitle(movie.getTitle())
.setDescription(movie.getDescription())
.setDurationMillis(Long.valueOf(movie.getDuration()).intValue())
.setType(TvContractCompat.PreviewPrograms.TYPE_MOVIE)
.setIntentUri(Uri
.withAppendedPath(BASE_URI, PLAY_VIDEO_ACTION_PATH)
.buildUpon()
.appendPath(movieId)
.build())
.setInternalProviderId(movieId)
.setContentId(movieId)
...
}
public static long parseVideoId(Uri uri) {
List<String> segments = uri.getPathSegments();
if(segments.size() == 2 && PLAY_VIDEO_ACTION_PATH.equals(segments.get(0))) {
return Long.valueOf(segments.get(1));
}
return -1L;
}
안드로이드 매니페스트
<receiver android:name=".PlayVideoReceiver"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data
android:scheme="<scheme>"
android:host="<host>"
android:path="/playvideo" />
</intent-filter>
</receiver>