Android 恢复当前在Google Cast'中播放视频;扩展控制活动';而不是重新启动
从我的android手机上,如果我再次播放一段已经播放过的电视视频,手机上会出现“ExpandedControlsActivity”,视频会从电视上开始播放。Android 恢复当前在Google Cast'中播放视频;扩展控制活动';而不是重新启动,android,video,chromecast,google-cast,Android,Video,Chromecast,Google Cast,从我的android手机上,如果我再次播放一段已经播放过的电视视频,手机上会出现“ExpandedControlsActivity”,视频会从电视上开始播放。 我不希望视频从头开始,我只希望它继续在电视上播放,并使“ExpandedControlsActivity”恢复到电视上的更新状态。可能吗?好的,是的。可以恢复当前播放的视频,因为GoogleCast框架具有中讨论的此设计功能 有了这个,您可能想尝试使用这个类 如本文所述 会话由类SessionManager管理,您的应用程序可以通过Cas
我不希望视频从头开始,我只希望它继续在电视上播放,并使“ExpandedControlsActivity”恢复到电视上的更新状态。可能吗?好的,是的。可以恢复当前播放的视频,因为GoogleCast框架具有中讨论的此设计功能 有了这个,您可能想尝试使用这个类 如本文所述 会话由类
SessionManager
管理,您的应用程序可以通过CastContext.getSessionManager()
访问该类。单个会话由类Session
的子类表示。例如,CastSession
表示使用Cast设备的会话。您的应用程序可以通过SessionManager.getCurrentCastSession()
访问当前活动的强制转换会话
此外,您还可以使用SessionManagerListener
类监视会话事件,如恢复。当会话处于活动状态时,Google Cast framework会自动尝试从异常/突然终止恢复
下面是一个关于如何管理会话的示例:
public class MyActivity extends Activity {
private CastSession mCastSession;
private SessionManager mSessionManager;
private final SessionManagerListener mSessionManagerListener =
new SessionManagerListenerImpl();
private class SessionManagerListenerImpl implements SessionManagerListener {
@Override
public void onSessionStarted(Session session, String sessionId) {
invalidateOptionsMenu();
}
@Override
public void onSessionResumed(Session session, boolean wasSuspended) {
invalidateOptionsMenu();
}
@Override
public void onSessionEnded(Session session, int error) {
finish();
}
}
@Override
protected void onCreate() {
mSessionManager = CastContext.getSharedInstance(this).getSessionManager();
super.onCreate();
}
@Override
protected void onResume() {
mCastSession = mSessionManager.getCurrentCastSession();
mSessionManager.addSessionManagerListener(mSessionManagerListener);
super.onResume();
}
@Override
protected void onPause() {
super.onPause();
mSessionManager.removeSessionManagerListener(mSessionManagerListener);
mCastSession = null;
}
}