Change WepNetworkDialogActivity exported="true".
Test: Visual Test Fix: 327310887 Change-Id: Iecc2910eda75f3aad60f4a876b0e1d54d203cd74
This commit is contained in:
@@ -5137,8 +5137,9 @@
|
|||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name="com.android.settings.network.WepNetworkDialogActivity"
|
android:name="com.android.settings.network.WepNetworkDialogActivity"
|
||||||
android:exported="false"
|
android:exported="true"
|
||||||
android:theme="@style/Theme.SpaLib.Dialog">
|
android:theme="@style/Theme.SpaLib.Dialog"
|
||||||
|
android:permission="android.permission.NETWORK_SETTINGS">
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<!-- This is the longest AndroidManifest.xml ever. -->
|
<!-- This is the longest AndroidManifest.xml ever. -->
|
||||||
|
@@ -1263,7 +1263,7 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
|
|||||||
|
|
||||||
if (Flags.androidVWifiApi() && wifiEntry.getSecurityTypes()
|
if (Flags.androidVWifiApi() && wifiEntry.getSecurityTypes()
|
||||||
.contains(WifiEntry.SECURITY_WEP)) {
|
.contains(WifiEntry.SECURITY_WEP)) {
|
||||||
WepNetworkDialogActivity.checkWepAllowed(
|
WifiUtils.checkWepAllowed(
|
||||||
getContext(), getViewLifecycleOwner(), wifiEntry.getSsid(), () -> {
|
getContext(), getViewLifecycleOwner(), wifiEntry.getSsid(), () -> {
|
||||||
wifiEntry.connect(callback);
|
wifiEntry.connect(callback);
|
||||||
return null;
|
return null;
|
||||||
|
@@ -17,8 +17,6 @@
|
|||||||
package com.android.settings.network
|
package com.android.settings.network
|
||||||
|
|
||||||
import android.app.settings.SettingsEnums
|
import android.app.settings.SettingsEnums
|
||||||
import android.content.Context
|
|
||||||
import android.content.Intent
|
|
||||||
import android.net.wifi.WifiManager
|
import android.net.wifi.WifiManager
|
||||||
import androidx.compose.foundation.layout.fillMaxWidth
|
import androidx.compose.foundation.layout.fillMaxWidth
|
||||||
import androidx.compose.material3.Text
|
import androidx.compose.material3.Text
|
||||||
@@ -26,20 +24,13 @@ import androidx.compose.runtime.Composable
|
|||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.platform.LocalContext
|
import androidx.compose.ui.platform.LocalContext
|
||||||
import androidx.compose.ui.text.style.TextAlign
|
import androidx.compose.ui.text.style.TextAlign
|
||||||
import androidx.lifecycle.LifecycleOwner
|
|
||||||
import androidx.lifecycle.lifecycleScope
|
|
||||||
import com.android.settings.R
|
import com.android.settings.R
|
||||||
import com.android.settings.core.SubSettingLauncher
|
import com.android.settings.core.SubSettingLauncher
|
||||||
import com.android.settings.wifi.ConfigureWifiSettings
|
import com.android.settings.wifi.ConfigureWifiSettings
|
||||||
import com.android.settingslib.spa.SpaBaseDialogActivity
|
import com.android.settingslib.spa.SpaBaseDialogActivity
|
||||||
import com.android.settingslib.spa.widget.dialog.AlertDialogButton
|
import com.android.settingslib.spa.widget.dialog.AlertDialogButton
|
||||||
import com.android.settingslib.spa.widget.dialog.SettingsAlertDialogWithIcon
|
import com.android.settingslib.spa.widget.dialog.SettingsAlertDialogWithIcon
|
||||||
import kotlin.coroutines.resume
|
import com.android.settingslib.wifi.WifiUtils.Companion.SSID
|
||||||
import kotlinx.coroutines.Dispatchers
|
|
||||||
import kotlinx.coroutines.asExecutor
|
|
||||||
import kotlinx.coroutines.launch
|
|
||||||
import kotlinx.coroutines.suspendCancellableCoroutine
|
|
||||||
import kotlinx.coroutines.withContext
|
|
||||||
|
|
||||||
class WepNetworkDialogActivity : SpaBaseDialogActivity() {
|
class WepNetworkDialogActivity : SpaBaseDialogActivity() {
|
||||||
@Composable
|
@Composable
|
||||||
@@ -76,37 +67,4 @@ class WepNetworkDialogActivity : SpaBaseDialogActivity() {
|
|||||||
)
|
)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
|
||||||
@JvmStatic
|
|
||||||
fun checkWepAllowed(
|
|
||||||
context: Context,
|
|
||||||
lifecycleOwner: LifecycleOwner,
|
|
||||||
ssid: String,
|
|
||||||
onAllowed: () -> Unit,
|
|
||||||
) {
|
|
||||||
lifecycleOwner.lifecycleScope.launch {
|
|
||||||
val wifiManager = context.getSystemService(WifiManager::class.java) ?: return@launch
|
|
||||||
if (wifiManager.queryWepAllowed()) {
|
|
||||||
onAllowed()
|
|
||||||
} else {
|
|
||||||
val intent = Intent(context, WepNetworkDialogActivity::class.java).apply {
|
|
||||||
putExtra(SSID, ssid)
|
|
||||||
}
|
|
||||||
context.startActivity(intent)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private suspend fun WifiManager.queryWepAllowed(): Boolean =
|
|
||||||
withContext(Dispatchers.Default) {
|
|
||||||
suspendCancellableCoroutine { continuation ->
|
|
||||||
queryWepAllowed(Dispatchers.Default.asExecutor()) {
|
|
||||||
continuation.resume(it)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const val SSID = "ssid"
|
|
||||||
}
|
|
||||||
}
|
}
|
Reference in New Issue
Block a user