• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java RemoteMediaClient类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.google.android.gms.cast.framework.media.RemoteMediaClient的典型用法代码示例。如果您正苦于以下问题:Java RemoteMediaClient类的具体用法?Java RemoteMediaClient怎么用?Java RemoteMediaClient使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



RemoteMediaClient类属于com.google.android.gms.cast.framework.media包,在下文中一共展示了RemoteMediaClient类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: playFiles

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
@Override
public void playFiles(List<MediaQueueItem> mediaItems) {
    CastSession castSession =
            CastContext.getSharedInstance(this).getSessionManager().getCurrentCastSession();
    if (castSession == null) {
        Toast.makeText(this, "Not connected", Toast.LENGTH_LONG).show();
        return;
    }

    // For variety, shuffle the list.
    Collections.shuffle(mediaItems);

    Log.d(TAG, "playFiles: sending " + mediaItems.size() + " files to Chromecast");
    RemoteMediaClient mediaClient = castSession.getRemoteMediaClient();
    int startIndex = 0;
    mediaClient.queueLoad(mediaItems.toArray(new MediaQueueItem[0]), startIndex,
            MediaStatus.REPEAT_MODE_REPEAT_ALL_AND_SHUFFLE, null);
}
 
开发者ID:stephenmcgruer,项目名称:simple-upnp,代码行数:19,代码来源:MainActivity.java


示例2: removeAll

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
public void removeAll() {
    synchronized (mLock) {
        if (mQueue.isEmpty()) {
            return;
        }
        RemoteMediaClient remoteMediaClient = getRemoteMediaClient();
        if (remoteMediaClient == null) {
            return;
        }
        int[] itemIds = new int[mQueue.size()];
        for (int i = 0; i < mQueue.size(); i++) {
            itemIds[i] = mQueue.get(i).getItemId();
        }
        remoteMediaClient.queueRemoveItems(itemIds, null);
        mQueue.clear();
    }
}
 
开发者ID:nordfalk,项目名称:EsperantoRadio,代码行数:18,代码来源:QueueDataProvider.java


示例3: syncWithRemoteQueue

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
private void syncWithRemoteQueue() {
    RemoteMediaClient remoteMediaClient = getRemoteMediaClient();
    if (remoteMediaClient != null) {
        remoteMediaClient.addListener(mRemoteMediaClientListener);
        MediaStatus mediaStatus = remoteMediaClient.getMediaStatus();
        if (mediaStatus != null) {
            List<MediaQueueItem> items = mediaStatus.getQueueItems();
            if (items != null && !items.isEmpty()) {
                mQueue.clear();
                mQueue.addAll(items);
                mRepeatMode = mediaStatus.getQueueRepeatMode();
                mCurrentIem = mediaStatus.getQueueItemById(mediaStatus.getCurrentItemId());
                mDetachedQueue = false;
                mUpcomingItem = mediaStatus.getQueueItemById(mediaStatus.getPreloadedItemId());
            }
        }
    }
}
 
开发者ID:nordfalk,项目名称:EsperantoRadio,代码行数:19,代码来源:QueueDataProvider.java


示例4: onPreloadStatusUpdated

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
@Override
public void onPreloadStatusUpdated() {
    RemoteMediaClient remoteMediaClient = getRemoteMediaClient();
    if (remoteMediaClient == null) {
        return;
    }
    MediaStatus mediaStatus = remoteMediaClient.getMediaStatus();
    if (mediaStatus == null) {
        return;
    }
    mUpcomingItem = mediaStatus.getQueueItemById(mediaStatus.getPreloadedItemId());
    Log.d(TAG, "onRemoteMediaPreloadStatusUpdated() with item=" + mUpcomingItem);
    if (mListener != null) {
        mListener.onQueueDataChanged();
    }
}
 
开发者ID:nordfalk,项目名称:EsperantoRadio,代码行数:17,代码来源:QueueDataProvider.java


示例5: updateMediaQueue

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
private void updateMediaQueue() {
    RemoteMediaClient remoteMediaClient = getRemoteMediaClient();
    MediaStatus mediaStatus;
    List<MediaQueueItem> queueItems = null;
    if (remoteMediaClient != null) {
        mediaStatus = remoteMediaClient.getMediaStatus();
        if (mediaStatus != null) {
            queueItems = mediaStatus.getQueueItems();
            mRepeatMode = mediaStatus.getQueueRepeatMode();
            mCurrentIem = mediaStatus.getQueueItemById(mediaStatus.getCurrentItemId());
        }
    }
    mQueue.clear();
    if (queueItems == null) {
        Log.d(TAG, "Queue is cleared");
    } else {
        Log.d(TAG, "Queue is updated with a list of size: " + queueItems.size());
        if (queueItems.size() > 0) {
            mQueue.addAll(queueItems);
            mDetachedQueue = false;
        } else {
            mDetachedQueue = true;
        }
    }
}
 
开发者ID:nordfalk,项目名称:EsperantoRadio,代码行数:26,代码来源:QueueDataProvider.java


示例6: updatePlayPauseButtonImageResource

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
private void updatePlayPauseButtonImageResource(ImageButton button) {
    CastSession castSession = CastContext.getSharedInstance(mAppContext)
            .getSessionManager().getCurrentCastSession();
    RemoteMediaClient remoteMediaClient =
            (castSession == null) ? null : castSession.getRemoteMediaClient();
    if (remoteMediaClient == null) {
        button.setVisibility(View.GONE);
        return;
    }
    int status = remoteMediaClient.getPlayerState();
    switch (status) {
        case MediaStatus.PLAYER_STATE_PLAYING:
            button.setImageResource(PAUSE_RESOURCE);
            break;
        case MediaStatus.PLAYER_STATE_PAUSED:
            button.setImageResource(PLAY_RESOURCE);
            break;
        default:
            button.setVisibility(View.GONE);
    }
}
 
开发者ID:nordfalk,项目名称:EsperantoRadio,代码行数:22,代码来源:QueueListAdapter.java


示例7: PlayRemote

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
public static void PlayRemote(String title, String url, String iconurl){
    Log.i("CAST",title);
    MediaMetadata movieMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MUSIC_TRACK);

    movieMetadata.putString(MediaMetadata.KEY_TITLE, title);
    //movieMetadata.putString(MediaMetadata.KEY_SUBTITLE, "MySubTitle");
    movieMetadata.addImage(new WebImage(Uri.parse(iconurl)));
    //movieMetadata.addImage(new WebImage(Uri.parse(mSelectedMedia.getImage(1))));


    MediaInfo mediaInfo = new MediaInfo.Builder(url)
            .setStreamType(MediaInfo.STREAM_TYPE_LIVE)
            .setContentType("audio/ogg")
            .setMetadata(movieMetadata)
            //.setStreamDuration(mSelectedMedia.getDuration() * 1000)
            .build();
    RemoteMediaClient remoteMediaClient = mCastSession.getRemoteMediaClient();
    remoteMediaClient.load(mediaInfo, true);
}
 
开发者ID:segler-alex,项目名称:RadioDroid,代码行数:20,代码来源:CastHandler.java


示例8: play

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
public void play() {
    if (!hasMediaSession(true)) {
        return;
    }

    LOGD(TAG, "Start PLAY");
    if (isEnded) {
        load(0, mEntryName, mEntryDescription , mEntryThumbnailUrl, mEntryId);
        stopTimer();
        startTimer();
        updateState(State.Playing);
        return;
    }
    mCastSession.getRemoteMediaClient().play().setResultCallback(new ResultCallback<RemoteMediaClient.MediaChannelResult>() {
        @Override
        public void onResult(@NonNull RemoteMediaClient.MediaChannelResult mediaChannelResult) {
            if (!mediaChannelResult.getStatus().isSuccess()) {
                LOGE(TAG, "CC Play failed");
                sendError("CC Play failed", null);
            } else {
                startTimer();
                updateState(State.Playing);
            }
        }
    });
}
 
开发者ID:kaltura,项目名称:player-sdk-native-android,代码行数:27,代码来源:KChromeCastPlayer.java


示例9: pause

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
public void pause() {
    if (!hasMediaSession(true)) {
        return;
    }

    LOGD(TAG, "Start PAUSE");
    mCastSession.getRemoteMediaClient().pause().setResultCallback(new ResultCallback<RemoteMediaClient.MediaChannelResult>() {
        @Override
        public void onResult(@NonNull RemoteMediaClient.MediaChannelResult mediaChannelResult) {
            if (!mediaChannelResult.getStatus().isSuccess()) {
                LOGE(TAG, "CC Pause failed");
                sendError("CC Pause failed", null);
            } else {
                updateState(State.Pause);
            }
        }
    });
    stopTimer();

}
 
开发者ID:kaltura,项目名称:player-sdk-native-android,代码行数:21,代码来源:KChromeCastPlayer.java


示例10: seek

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
public void seek(long currentPosition) {
    if (!hasMediaSession(true)) {
        return;
    }

    LOGD(TAG, "CC seek to " + currentPosition);
    LOGD(TAG, "CC SEND SEEKING");
    updateState(State.Seeking);
    mCastSession.getRemoteMediaClient().seek(currentPosition).setResultCallback(new ResultCallback<RemoteMediaClient.MediaChannelResult>() {
        @Override
        public void onResult(@NonNull RemoteMediaClient.MediaChannelResult mediaChannelResult) {
            if (!mediaChannelResult.getStatus().isSuccess()) {
                LOGE(TAG, "CC Seek to currentPosition failed");
                sendError("CC Seek failed", null);
            } else {
                new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        LOGD(TAG, "CC SEND SEEKED");
                        updateState(State.Seeked);
                    }
                }, 2500);
            }
        }
    });
}
 
开发者ID:kaltura,项目名称:player-sdk-native-android,代码行数:27,代码来源:KChromeCastPlayer.java


示例11: setStreamVolume

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
@Override
public void setStreamVolume(double streamVolume) {
    if (!hasMediaSession(true)) {
        return;
    }

    LOGD(TAG, "CC setStreamVolume " + streamVolume);
    mCastSession.getRemoteMediaClient().setStreamVolume(streamVolume).setResultCallback(new ResultCallback<RemoteMediaClient.MediaChannelResult>() {
        @Override
        public void onResult(@NonNull RemoteMediaClient.MediaChannelResult mediaChannelResult) {
            if (!mediaChannelResult.getStatus().isSuccess()) {
                LOGE(TAG, "CC setStreamVolume failed");
                sendError("CC setStreamVolume failed", null);
            } else {
                updateState(State.VolumeChanged);
            }
        }
    });
}
 
开发者ID:kaltura,项目名称:player-sdk-native-android,代码行数:20,代码来源:KChromeCastPlayer.java


示例12: castMedia

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
private void castMedia() {
    if (castSession != null) {
        MediaMetadata audioMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MUSIC_TRACK);
        String url = "http://" + Helpers.getIpAddress(MediaRecorderService.this) + ":" + StreamHttpServer.HTTP_SERVER_PORT + StreamHttpServer.HTTP_SERVER_URL_PATH;
        MediaInfo mediaInfo = new MediaInfo.Builder(url)
                .setStreamType(MediaInfo.STREAM_TYPE_LIVE)
                .setContentType("audio/aac")
                .setMetadata(audioMetadata)
                .build();
        Log.d(TAG, "MediaInfo: " + mediaInfo);
        RemoteMediaClient remoteMediaClient = castSession.getRemoteMediaClient();
        remoteMediaClient.load(mediaInfo);
    }
}
 
开发者ID:aschober,项目名称:vinyl-cast,代码行数:15,代码来源:MediaRecorderService.java


示例13: isRemoteVideoPlaying

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
private boolean isRemoteVideoPlaying() {
    if (castSession != null) {
        RemoteMediaClient remoteMediaClient = castSession.getRemoteMediaClient();
        return remoteMediaClient.isPlaying();
    }
    return false;
}
 
开发者ID:SalmanTKhan,项目名称:MyAnimeViewer,代码行数:8,代码来源:VideoDetailsFragment.java


示例14: resumeRemoteVideo

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
private void resumeRemoteVideo() {
    if (castSession != null) {
        RemoteMediaClient remoteMediaClient = castSession.getRemoteMediaClient();
        if (remoteMediaClient != null) {
            remoteMediaClient.play();
        }
    }
}
 
开发者ID:SalmanTKhan,项目名称:MyAnimeViewer,代码行数:9,代码来源:VideoDetailsFragment.java


示例15: pauseRemoteVideo

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
private void pauseRemoteVideo() {
    if (castSession != null) {
        RemoteMediaClient remoteMediaClient = castSession.getRemoteMediaClient();
        if (remoteMediaClient != null) {
            remoteMediaClient.pause();
        }
    }
}
 
开发者ID:SalmanTKhan,项目名称:MyAnimeViewer,代码行数:9,代码来源:VideoDetailsFragment.java


示例16: createRemoteMediaClientListener

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
private RemoteMediaClient.Listener createRemoteMediaClientListener() {
    return new RemoteMediaClient.Listener() {
        @Override
        public void onStatusUpdated() {
            onMediaLoadedListener.onMediaLoaded();
            remoteMediaClient.removeListener(this);
        }

        @Override
        public void onMetadataUpdated() {
            //no-op
        }

        @Override
        public void onQueueStatusUpdated() {
            //no-op
        }

        @Override
        public void onPreloadStatusUpdated() {
            //no-op
        }

        @Override
        public void onSendingRemoteMediaRequest() {
            //no-op
        }

        @Override
        public void onAdBreakStatusUpdated() {
            //no-op
        }
    };
}
 
开发者ID:DroidsOnRoids,项目名称:Casty,代码行数:35,代码来源:CastyPlayer.java


示例17: loadRemoteMedia

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
private void loadRemoteMedia(int position, boolean autoPlay) {
    if (mCastSession == null) {
        return;
    }
    final RemoteMediaClient remoteMediaClient = mCastSession.getRemoteMediaClient();
    if (remoteMediaClient == null) {
        return;
    }
    remoteMediaClient.addListener(new RemoteMediaClient.Listener() {
        @Override
        public void onStatusUpdated() {
            Intent intent = new Intent(LocalPlayerActivity.this, ExpandedControlsActivity.class);
            startActivity(intent);
            remoteMediaClient.removeListener(this);
        }

        @Override
        public void onMetadataUpdated() {
        }

        @Override
        public void onQueueStatusUpdated() {
        }

        @Override
        public void onPreloadStatusUpdated() {
        }

        @Override
        public void onSendingRemoteMediaRequest() {
        }
    });
    remoteMediaClient.load(mSelectedMedia, autoPlay, position);
}
 
开发者ID:nordfalk,项目名称:EsperantoRadio,代码行数:35,代码来源:LocalPlayerActivity.java


示例18: onUpcomingStopClicked

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
public void onUpcomingStopClicked(View view, MediaQueueItem upcomingItem) {
    RemoteMediaClient remoteMediaClient = getRemoteMediaClient();
    if (remoteMediaClient == null) {
        return;
    }
    // need to truncate the queue on the remote device so that we can complete the playback of
    // the current item but not go any further. Alternatively, one could just stop the playback
    // here, if that was acceptable.
    int position = getPositionByItemId(upcomingItem.getItemId());
    int[] itemIds = new int[getCount() - position];
    for (int i = 0; i < itemIds.length; i++) {
        itemIds[i] = mQueue.get(i + position).getItemId();
    }
    remoteMediaClient.queueRemoveItems(itemIds, null);
}
 
开发者ID:nordfalk,项目名称:EsperantoRadio,代码行数:16,代码来源:QueueDataProvider.java


示例19: onUpcomingPlayClicked

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
public void onUpcomingPlayClicked(View view, MediaQueueItem upcomingItem) {
    RemoteMediaClient remoteMediaClient = getRemoteMediaClient();
    if (remoteMediaClient == null) {
        return;
    }
    remoteMediaClient.queueJumpToItem(upcomingItem.getItemId(), null);
}
 
开发者ID:nordfalk,项目名称:EsperantoRadio,代码行数:8,代码来源:QueueDataProvider.java


示例20: removeFromQueue

import com.google.android.gms.cast.framework.media.RemoteMediaClient; //导入依赖的package包/类
public void removeFromQueue(int position) {
    synchronized (mLock) {
        RemoteMediaClient remoteMediaClient = getRemoteMediaClient();
        if (remoteMediaClient == null) {
            return;
        }
        remoteMediaClient.queueRemoveItem(mQueue.get(position).getItemId(), null);
    }
}
 
开发者ID:nordfalk,项目名称:EsperantoRadio,代码行数:10,代码来源:QueueDataProvider.java



注:本文中的com.google.android.gms.cast.framework.media.RemoteMediaClient类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java UnitOfWork类代码示例发布时间:2022-05-21
下一篇:
Java Node类代码示例发布时间:2022-05-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap