mirror of
https://codeberg.org/timelimit/timelimit-android.git
synced 2025-10-03 01:39:22 +02:00
Allow blocking the private dns settings
This commit is contained in:
parent
e6ad261ddc
commit
152e479d4c
3 changed files with 24 additions and 2 deletions
|
@ -18,16 +18,27 @@ package io.timelimit.android.integration.platform.android
|
|||
import android.app.admin.DevicePolicyManager
|
||||
import android.content.ComponentName
|
||||
import android.content.Context
|
||||
import android.os.Build.VERSION
|
||||
import android.os.Build.VERSION_CODES
|
||||
import android.os.UserManager
|
||||
import io.timelimit.android.R
|
||||
import io.timelimit.android.integration.platform.PlatformFeature
|
||||
|
||||
object AndroidFeatures {
|
||||
private const val FEATURE_ADB = "adb"
|
||||
private const val FEATURE_CONFIG_PRIVATE_DNS = "dns"
|
||||
|
||||
fun applyBlockedFeatures(features: Set<String>, policyManager: DevicePolicyManager, admin: ComponentName): Boolean {
|
||||
if (features.contains(FEATURE_ADB)) policyManager.addUserRestriction(admin, UserManager.DISALLOW_DEBUGGING_FEATURES)
|
||||
else policyManager.clearUserRestriction(admin, UserManager.DISALLOW_DEBUGGING_FEATURES)
|
||||
fun apply(feature: String, restriction: String) {
|
||||
if (features.contains(feature)) policyManager.addUserRestriction(admin, restriction)
|
||||
else policyManager.clearUserRestriction(admin, restriction)
|
||||
}
|
||||
|
||||
apply(FEATURE_ADB, UserManager.DISALLOW_DEBUGGING_FEATURES)
|
||||
|
||||
if (VERSION.SDK_INT >= VERSION_CODES.Q) {
|
||||
apply(FEATURE_CONFIG_PRIVATE_DNS, UserManager.DISALLOW_CONFIG_PRIVATE_DNS)
|
||||
}
|
||||
|
||||
return true
|
||||
}
|
||||
|
@ -40,6 +51,15 @@ object AndroidFeatures {
|
|||
title = context.getString(R.string.dummy_app_feature_adb)
|
||||
))
|
||||
|
||||
if (VERSION.SDK_INT >= VERSION_CODES.Q) {
|
||||
result.add(
|
||||
PlatformFeature(
|
||||
id = FEATURE_CONFIG_PRIVATE_DNS,
|
||||
title = context.getString(R.string.dummy_app_feature_dns)
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
return result
|
||||
}
|
||||
}
|
|
@ -1665,6 +1665,7 @@
|
|||
|
||||
<string name="dummy_app_unassigned_system_image_app">nicht zugeordnete Apps von der Systempartition</string>
|
||||
<string name="dummy_app_feature_adb">Entwickleroptionen</string>
|
||||
<string name="dummy_app_feature_dns">DNS-Einstellungen</string>
|
||||
<string name="dummy_app_activity_audio">Hintergrundmusikwiedergabe</string>
|
||||
|
||||
<string name="notify_permission_title">Benachrichtigungen</string>
|
||||
|
|
|
@ -1713,6 +1713,7 @@
|
|||
|
||||
<string name="dummy_app_unassigned_system_image_app">not assigned Apps from the system image</string>
|
||||
<string name="dummy_app_feature_adb">Developer Options</string>
|
||||
<string name="dummy_app_feature_dns">DNS Settings</string>
|
||||
<string name="dummy_app_activity_audio">Background Audio Playback</string>
|
||||
|
||||
<string name="notify_permission_title">Notifications</string>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue