在我的Chromecast Sender应用程序中,我添加了一个菜单项,允许用户停止设备上的接收器应用程序(并确保媒体路由器对话框中的"断开连接"按钮& #39; t 停止接收器,就像在CastHelloText-android示例应用程序中一样)
因此,当用户点击"退出应用程序"菜单项,我正在运行示例代码" teardown()"方法(显示here)。此代码会终止接收方应用程序,并应取消选择当前选定的设备。
然而,虽然它确实会杀死接收器应用程序,但它并没有取消选择设备,并且Cast图标保持在选定状态,并且点击它会显示对话框,就好像手机仍然连接到Chromecast。
显然,如果我尝试从我的应用程序中投射任何内容,它就不会。
那么如何完全断开与设备的连接?
我的teardown()方法与链接代码中的100%相同。以下是我的菜单代码:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
final SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
switch (item.getItemId()) {
case R.id.exit_app:
teardown();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
答案 0 :(得分:2)
你可以打电话
mMediaRouter.selectRoute(mMediaRouter.getDefaultRoute())
答案 1 :(得分:0)
可选地
mMediaRouter.unselect(UNSELECT_REASON_DISCONNECTED)