diff options
author | Scott Jackson <daneren2005@gmail.com> | 2016-11-22 17:28:56 -0800 |
---|---|---|
committer | Scott Jackson <daneren2005@gmail.com> | 2016-11-22 17:28:56 -0800 |
commit | aeacb4a4b03a55ceb19e587dd3003b86b2e8b941 (patch) | |
tree | f1168d3d99dd39609902866968405cb08a6de13c /app/src/main/java/github/daneren2005/dsub/provider | |
parent | ea893fb36c8dc06257ddbcae7e8c850eefa501b4 (diff) | |
download | dsub-aeacb4a4b03a55ceb19e587dd3003b86b2e8b941.tar.gz dsub-aeacb4a4b03a55ceb19e587dd3003b86b2e8b941.tar.bz2 dsub-aeacb4a4b03a55ceb19e587dd3003b86b2e8b941.zip |
Add option to disable DLNA casting
Diffstat (limited to 'app/src/main/java/github/daneren2005/dsub/provider')
-rw-r--r-- | app/src/main/java/github/daneren2005/dsub/provider/DLNARouteProvider.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/app/src/main/java/github/daneren2005/dsub/provider/DLNARouteProvider.java b/app/src/main/java/github/daneren2005/dsub/provider/DLNARouteProvider.java index 0f6975ba..0ee16723 100644 --- a/app/src/main/java/github/daneren2005/dsub/provider/DLNARouteProvider.java +++ b/app/src/main/java/github/daneren2005/dsub/provider/DLNARouteProvider.java @@ -71,6 +71,7 @@ public class DLNARouteProvider extends MediaRouteProvider { private List<String> removing = new ArrayList<String>(); private AndroidUpnpService dlnaService; private ServiceConnection dlnaServiceConnection; + private RegistryListener registryListener; private boolean searchOnConnect = false; public DLNARouteProvider(Context context) { @@ -84,7 +85,7 @@ public class DLNARouteProvider extends MediaRouteProvider { @Override public void onServiceConnected(ComponentName name, IBinder service) { dlnaService = (AndroidUpnpService) service; - dlnaService.getRegistry().addListener(new RegistryListener() { + dlnaService.getRegistry().addListener(registryListener = new RegistryListener() { @Override public void remoteDeviceDiscoveryStarted(Registry registry, RemoteDevice remoteDevice) { @@ -142,6 +143,7 @@ public class DLNARouteProvider extends MediaRouteProvider { @Override public void onServiceDisconnected(ComponentName name) { dlnaService = null; + registryListener = null; } }; @@ -290,6 +292,17 @@ public class DLNARouteProvider extends MediaRouteProvider { } } + public void destroy() { + if(dlnaService != null) { + dlnaService.getRegistry().removeListener(registryListener); + registryListener = null; + } + + if(dlnaServiceConnection != null) { + getContext().getApplicationContext().unbindService(dlnaServiceConnection); + } + } + private class DLNARouteController extends RouteController { private DLNADevice device; |