2015-02-06 71 views
1

在我的Chromecast Sender应用程序,我添加了一个菜单项,允许用户停止该设备上的接收器应用程序(并确保在媒体路由器对话框“断开”按钮不会停止接收器,像它在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); 
    } 
} 

回答

2

您可以拨打

mMediaRouter.selectRoute(mMediaRouter.getDefaultRoute()) 
0

或者

mMediaRouter.unselect(UNSELECT_REASON_DISCONNECTED) 
+0

嗨@Ali Naddaf, 我想从Chromecast的断开应用程序时,用户清除应用程式从堆栈。这可能吗? – Saty 2016-10-18 09:14:18

相关问题