From ee4e108e4fb6dd6173430294ca93a37f7e82ad94 Mon Sep 17 00:00:00 2001 From: Koen J Date: Mon, 2 Sep 2024 17:57:51 +0200 Subject: [PATCH] Acquiring and releasing multicast lock. --- app/src/main/AndroidManifest.xml | 1 + .../com/futo/platformplayer/activities/MainActivity.kt | 10 +++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 05675554..81a29817 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -5,6 +5,7 @@ + diff --git a/app/src/main/java/com/futo/platformplayer/activities/MainActivity.kt b/app/src/main/java/com/futo/platformplayer/activities/MainActivity.kt index b2af4023..8b5fa562 100644 --- a/app/src/main/java/com/futo/platformplayer/activities/MainActivity.kt +++ b/app/src/main/java/com/futo/platformplayer/activities/MainActivity.kt @@ -7,6 +7,7 @@ import android.content.Intent.FLAG_ACTIVITY_NEW_TASK import android.content.pm.PackageManager import android.content.res.Configuration import android.net.Uri +import android.net.wifi.WifiManager import android.os.Bundle import android.os.StrictMode import android.os.StrictMode.VmPolicy @@ -111,6 +112,7 @@ class MainActivity : AppCompatActivity, IWithResultLauncher { private lateinit var _overlayContainer: FrameLayout; private lateinit var _toastView: ToastView; + private lateinit var _multicastLock: WifiManager.MulticastLock //Segment Containers private lateinit var _fragContainerTopBar: FragmentContainerView; @@ -245,6 +247,12 @@ class MainActivity : AppCompatActivity, IWithResultLauncher { } override fun onCreate(savedInstanceState: Bundle?) { + Logger.i(TAG, "Acquiring multicast lock") + val wifiManager = applicationContext.getSystemService(WIFI_SERVICE) as WifiManager + _multicastLock = wifiManager.createMulticastLock("mdnsLock") + _multicastLock.setReferenceCounted(true) + _multicastLock.acquire() + Logger.i(TAG, "MainActivity Starting"); StateApp.instance.setGlobalContext(this, lifecycleScope); StateApp.instance.mainAppStarting(this); @@ -514,7 +522,6 @@ class MainActivity : AppCompatActivity, IWithResultLauncher { } } - /* override fun onRequestPermissionsResult(requestCode: Int, permissions: Array, grantResults: IntArray) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); @@ -970,6 +977,7 @@ class MainActivity : AppCompatActivity, IWithResultLauncher { override fun onDestroy() { super.onDestroy(); Logger.v(TAG, "onDestroy") + _multicastLock.release() StateApp.instance.mainAppDestroyed(this); }