Статус CastApi не получен

У меня есть приемник для приведенных статусов:

private void setMessageReceiver() {
    try {
        Cast.CastApi.setMessageReceivedCallbacks(
                mGoogleApiClient,
                mRemoteMediaPlayer.getNamespace(),
                this::handleMediaStatus
        );
    } catch (IOException e) {
        Log.wtf("error", e.getMessage(), e);
    }
}

И когда я снимаю аудио, аудио с изображением или видео - все нормально, я получаю статусы актеров. Однако, когда я разыгрываю только изображение, я не получаю статусы о завершении разыгрывания, только о простое (с idleReason=buffering). Я добавил запрос статуса следующим образом:

Cast.CastApi.requestStatus(mGoogleApiClient);

в моем состоянии простоя обработчик. Но это не работает.

Мое mediaInfo для изображения, которое я построил так:

MediaMetadata mMediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_PHOTO);
MediaInfo mediaInfo = new MediaInfo.Builder(media.getUrl())
            .setContentType(media.getMimeType())
            .setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
            .setMetadata(mMediaMetadata)
            .setStreamDuration(1000)
            .build();

media в этом случае мой обычай pojo с полями url, mime-type и некоторые другие поля. Для кастинга изображения я использовал image/jpeg мим-типа. Итак, мой вопрос в том, что я делаю неправильно и почему я не получаю статус приведения с окончанием приведения изображения? И как это можно исправить?

0 ответов

Другие вопросы по тегам