mirror of
https://github.com/awfixers-stuff/OwnDroid.git
synced 2026-03-23 11:05:59 +00:00
setMinimumRequiredWifiSecurityLevel
This commit is contained in:
@@ -19,6 +19,7 @@
|
|||||||
android:roundIcon="@mipmap/ic_launcher_round"
|
android:roundIcon="@mipmap/ic_launcher_round"
|
||||||
android:theme="@style/Theme.AndroidOwner"
|
android:theme="@style/Theme.AndroidOwner"
|
||||||
android:enableOnBackInvokedCallback="true"
|
android:enableOnBackInvokedCallback="true"
|
||||||
|
android:allowNativeHeapPointerTagging="true"
|
||||||
tools:targetApi="34">
|
tools:targetApi="34">
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ fun ApplicationManage(){
|
|||||||
myDpm.setPermittedInputMethods(myComponent, imeList)
|
myDpm.setPermittedInputMethods(myComponent, imeList)
|
||||||
refreshList()
|
refreshList()
|
||||||
},
|
},
|
||||||
modifier = if(isWear){Modifier}else{Modifier.fillMaxWidth(0.48F)},
|
modifier = Modifier.fillMaxWidth(0.48F),
|
||||||
enabled = isDeviceOwner(myDpm)||isProfileOwner(myDpm)
|
enabled = isDeviceOwner(myDpm)||isProfileOwner(myDpm)
|
||||||
) {
|
) {
|
||||||
Text("加入列表")
|
Text("加入列表")
|
||||||
@@ -125,7 +125,7 @@ fun ApplicationManage(){
|
|||||||
myDpm.setPermittedInputMethods(myComponent,imeList)
|
myDpm.setPermittedInputMethods(myComponent,imeList)
|
||||||
refreshList()
|
refreshList()
|
||||||
},
|
},
|
||||||
modifier = if(isWear){Modifier}else{Modifier.fillMaxWidth(0.92F)},
|
modifier = Modifier.fillMaxWidth(0.92F),
|
||||||
enabled = isDeviceOwner(myDpm)||isProfileOwner(myDpm)
|
enabled = isDeviceOwner(myDpm)||isProfileOwner(myDpm)
|
||||||
) {
|
) {
|
||||||
Text("从列表中移除")
|
Text("从列表中移除")
|
||||||
|
|||||||
@@ -1,9 +1,7 @@
|
|||||||
package com.binbin.androidowner
|
package com.binbin.androidowner
|
||||||
|
|
||||||
import android.app.admin.DevicePolicyManager
|
import android.app.admin.DevicePolicyManager
|
||||||
import android.app.admin.DevicePolicyManager.MTE_DISABLED
|
import android.app.admin.DevicePolicyManager.*
|
||||||
import android.app.admin.DevicePolicyManager.MTE_ENABLED
|
|
||||||
import android.app.admin.DevicePolicyManager.MTE_NOT_CONTROLLED_BY_POLICY
|
|
||||||
import android.content.ComponentName
|
import android.content.ComponentName
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.os.Build.VERSION
|
import android.os.Build.VERSION
|
||||||
@@ -151,6 +149,29 @@ fun DeviceControl(){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(VERSION.SDK_INT>=33){
|
||||||
|
Column(modifier = sections()){
|
||||||
|
var selectedWifiSecLevel by remember{mutableIntStateOf(myDpm.minimumRequiredWifiSecurityLevel)}
|
||||||
|
Text(text = "WiFi安全等级", style = typography.titleLarge, color = colorScheme.onPrimaryContainer)
|
||||||
|
RadioButtonItem("开放", {selectedWifiSecLevel==WIFI_SECURITY_OPEN}, {selectedWifiSecLevel= WIFI_SECURITY_OPEN})
|
||||||
|
RadioButtonItem("WEP, WPA(2)-PSK", {selectedWifiSecLevel==WIFI_SECURITY_PERSONAL}, {selectedWifiSecLevel= WIFI_SECURITY_PERSONAL})
|
||||||
|
RadioButtonItem("WPA-EAP", {selectedWifiSecLevel==WIFI_SECURITY_ENTERPRISE_EAP}, {selectedWifiSecLevel= WIFI_SECURITY_ENTERPRISE_EAP})
|
||||||
|
RadioButtonItem("WPA3-192bit", {selectedWifiSecLevel==WIFI_SECURITY_ENTERPRISE_192}, {selectedWifiSecLevel= WIFI_SECURITY_ENTERPRISE_192})
|
||||||
|
Button(
|
||||||
|
enabled = isDeviceOwner(myDpm)||isProfileOwner(myDpm),
|
||||||
|
onClick = {
|
||||||
|
myDpm.minimumRequiredWifiSecurityLevel=selectedWifiSecLevel
|
||||||
|
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
||||||
|
},
|
||||||
|
modifier = Modifier.fillMaxWidth()
|
||||||
|
){
|
||||||
|
Text("应用")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
Text(text = "Wifi安全等级需API33", modifier = Modifier.padding(vertical = 3.dp))
|
||||||
|
}
|
||||||
|
|
||||||
if(isDeviceOwner(myDpm)){
|
if(isDeviceOwner(myDpm)){
|
||||||
SysUpdatePolicy(myDpm,myComponent,myContext)
|
SysUpdatePolicy(myDpm,myComponent,myContext)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -104,6 +104,7 @@ fun Password(){
|
|||||||
) {
|
) {
|
||||||
Text("清除")
|
Text("清除")
|
||||||
}
|
}
|
||||||
|
if(isWear){Spacer(Modifier.padding(horizontal = 2.dp))}
|
||||||
Button(
|
Button(
|
||||||
onClick = {
|
onClick = {
|
||||||
if(myDpm.setResetPasswordToken(myComponent, myByteArray)){ Toast.makeText(myContext, "设置成功", Toast.LENGTH_SHORT).show()
|
if(myDpm.setResetPasswordToken(myComponent, myByteArray)){ Toast.makeText(myContext, "设置成功", Toast.LENGTH_SHORT).show()
|
||||||
@@ -114,6 +115,7 @@ fun Password(){
|
|||||||
) {
|
) {
|
||||||
Text("设置")
|
Text("设置")
|
||||||
}
|
}
|
||||||
|
if(isWear){Spacer(Modifier.padding(horizontal = 2.dp))}
|
||||||
Button(
|
Button(
|
||||||
onClick = {
|
onClick = {
|
||||||
if(!myDpm.isResetPasswordTokenActive(myComponent)){
|
if(!myDpm.isResetPasswordTokenActive(myComponent)){
|
||||||
@@ -336,7 +338,7 @@ fun Password(){
|
|||||||
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
||||||
calculateCustomFeature()
|
calculateCustomFeature()
|
||||||
},
|
},
|
||||||
enabled = myDpm.isAdminActive(myComponent),
|
enabled = isProfileOwner(myDpm)||isDeviceOwner(myDpm),
|
||||||
modifier = Modifier.fillMaxWidth()
|
modifier = Modifier.fillMaxWidth()
|
||||||
) {
|
) {
|
||||||
Text(text = "应用")
|
Text(text = "应用")
|
||||||
|
|||||||
@@ -7,12 +7,8 @@ import android.content.Intent
|
|||||||
import android.os.Build.VERSION
|
import android.os.Build.VERSION
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.activity.ComponentActivity
|
import androidx.activity.ComponentActivity
|
||||||
import androidx.compose.foundation.layout.Arrangement
|
import androidx.compose.foundation.horizontalScroll
|
||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.*
|
||||||
import androidx.compose.foundation.layout.Row
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.fillMaxWidth
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.rememberScrollState
|
import androidx.compose.foundation.rememberScrollState
|
||||||
import androidx.compose.foundation.text.KeyboardActions
|
import androidx.compose.foundation.text.KeyboardActions
|
||||||
import androidx.compose.foundation.text.KeyboardOptions
|
import androidx.compose.foundation.text.KeyboardOptions
|
||||||
@@ -20,15 +16,11 @@ import androidx.compose.foundation.text.selection.SelectionContainer
|
|||||||
import androidx.compose.foundation.verticalScroll
|
import androidx.compose.foundation.verticalScroll
|
||||||
import androidx.compose.material3.Button
|
import androidx.compose.material3.Button
|
||||||
import androidx.compose.material3.ButtonDefaults
|
import androidx.compose.material3.ButtonDefaults
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme.colorScheme
|
||||||
import androidx.compose.material3.MaterialTheme.typography
|
import androidx.compose.material3.MaterialTheme.typography
|
||||||
import androidx.compose.material3.Text
|
import androidx.compose.material3.Text
|
||||||
import androidx.compose.material3.TextField
|
import androidx.compose.material3.TextField
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.*
|
||||||
import androidx.compose.runtime.getValue
|
|
||||||
import androidx.compose.runtime.mutableStateOf
|
|
||||||
import androidx.compose.runtime.remember
|
|
||||||
import androidx.compose.runtime.setValue
|
|
||||||
import androidx.compose.ui.Alignment
|
import androidx.compose.ui.Alignment
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.focus.FocusManager
|
import androidx.compose.ui.focus.FocusManager
|
||||||
@@ -52,7 +44,7 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
val focusManager = LocalFocusManager.current
|
val focusManager = LocalFocusManager.current
|
||||||
val sharedPref = LocalContext.current.getSharedPreferences("data", Context.MODE_PRIVATE)
|
val sharedPref = LocalContext.current.getSharedPreferences("data", Context.MODE_PRIVATE)
|
||||||
val isWear = sharedPref.getBoolean("isWear",false)
|
val isWear = sharedPref.getBoolean("isWear",false)
|
||||||
val titleColor = MaterialTheme.colorScheme.onPrimaryContainer
|
val titleColor = colorScheme.onPrimaryContainer
|
||||||
val bodyTextStyle = if(isWear){typography.bodyMedium}else{typography.bodyLarge}
|
val bodyTextStyle = if(isWear){typography.bodyMedium}else{typography.bodyLarge}
|
||||||
Column(
|
Column(
|
||||||
modifier = Modifier.verticalScroll(rememberScrollState()),
|
modifier = Modifier.verticalScroll(rememberScrollState()),
|
||||||
@@ -94,12 +86,12 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
}
|
}
|
||||||
if(!isda){
|
if(!isda){
|
||||||
Column(
|
Column(
|
||||||
modifier = sections(MaterialTheme.colorScheme.tertiaryContainer.copy(alpha = 0.8F)),
|
modifier = sections(colorScheme.tertiaryContainer.copy(alpha = 0.8F)),
|
||||||
horizontalAlignment = Alignment.Start
|
horizontalAlignment = Alignment.Start
|
||||||
) {
|
) {
|
||||||
SelectionContainer {
|
SelectionContainer {
|
||||||
Text("adb shell dpm set-active-admin com.binbin.androidowner/com.binbin.androidowner.MyDeviceAdminReceiver",
|
Text("adb shell dpm set-active-admin com.binbin.androidowner/com.binbin.androidowner.MyDeviceAdminReceiver",
|
||||||
color = MaterialTheme.colorScheme.onTertiaryContainer, style = bodyTextStyle)
|
color = colorScheme.onTertiaryContainer, style = bodyTextStyle)
|
||||||
}
|
}
|
||||||
Text(text = "或者进入设置(原生安卓) -> 安全 -> 更多安全设置 -> 设备管理应用 -> Android Owner", style = bodyTextStyle)
|
Text(text = "或者进入设置(原生安卓) -> 安全 -> 更多安全设置 -> 设备管理应用 -> Android Owner", style = bodyTextStyle)
|
||||||
}
|
}
|
||||||
@@ -130,13 +122,13 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
}
|
}
|
||||||
if(!isProfileOwner(myDpm)){
|
if(!isProfileOwner(myDpm)){
|
||||||
Column(
|
Column(
|
||||||
modifier = sections(MaterialTheme.colorScheme.tertiaryContainer.copy(alpha = 0.8F)),
|
modifier = sections(colorScheme.tertiaryContainer.copy(alpha = 0.8F)),
|
||||||
horizontalAlignment = Alignment.Start
|
horizontalAlignment = Alignment.Start
|
||||||
) {
|
) {
|
||||||
if(!isDeviceOwner(myDpm)){
|
if(!isDeviceOwner(myDpm)){
|
||||||
SelectionContainer {
|
SelectionContainer {
|
||||||
Text("adb shell dpm set-profile-owner com.binbin.androidowner/com.binbin.androidowner.MyDeviceAdminReceiver",
|
Text("adb shell dpm set-profile-owner com.binbin.androidowner/com.binbin.androidowner.MyDeviceAdminReceiver",
|
||||||
color = MaterialTheme.colorScheme.onTertiaryContainer, style = bodyTextStyle)
|
color = colorScheme.onTertiaryContainer, style = bodyTextStyle)
|
||||||
}
|
}
|
||||||
Text(text = "Device owner和Profile owner不能同时存在,强烈建议激活Device owner", style = bodyTextStyle)
|
Text(text = "Device owner和Profile owner不能同时存在,强烈建议激活Device owner", style = bodyTextStyle)
|
||||||
}
|
}
|
||||||
@@ -171,12 +163,12 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
}
|
}
|
||||||
if(!isDeviceOwner(myDpm)&&!isProfileOwner(myDpm)){
|
if(!isDeviceOwner(myDpm)&&!isProfileOwner(myDpm)){
|
||||||
Column(
|
Column(
|
||||||
modifier = sections(MaterialTheme.colorScheme.tertiaryContainer.copy(alpha = 0.8F)),
|
modifier = sections(colorScheme.tertiaryContainer.copy(alpha = 0.8F)),
|
||||||
horizontalAlignment = Alignment.Start
|
horizontalAlignment = Alignment.Start
|
||||||
) {
|
) {
|
||||||
SelectionContainer {
|
SelectionContainer {
|
||||||
Text(text = "adb shell dpm set-device-owner com.binbin.androidowner/com.binbin.androidowner.MyDeviceAdminReceiver",
|
Text(text = "adb shell dpm set-device-owner com.binbin.androidowner/com.binbin.androidowner.MyDeviceAdminReceiver",
|
||||||
color = MaterialTheme.colorScheme.onTertiaryContainer, style = bodyTextStyle)
|
color = colorScheme.onTertiaryContainer, style = bodyTextStyle)
|
||||||
}
|
}
|
||||||
if(!isda){
|
if(!isda){
|
||||||
Text(text = "使用此命令也会激活Device Admin", style = bodyTextStyle)
|
Text(text = "使用此命令也会激活Device Admin", style = bodyTextStyle)
|
||||||
@@ -186,8 +178,8 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
if(isDeviceOwner(myDpm)|| isProfileOwner(myDpm)||myDpm.isAdminActive(myComponent)){
|
if(isDeviceOwner(myDpm)|| isProfileOwner(myDpm)||myDpm.isAdminActive(myComponent)){
|
||||||
Text(
|
Text(
|
||||||
text = "注意!在这里撤销权限不会清除配置。比如:被停用的应用会保持停用状态",
|
text = "注意!在这里撤销权限不会清除配置。比如:被停用的应用会保持停用状态",
|
||||||
color = MaterialTheme.colorScheme.onErrorContainer,
|
color = colorScheme.onErrorContainer,
|
||||||
modifier = sections(MaterialTheme.colorScheme.errorContainer.copy(alpha = 0.8F)),
|
modifier = sections(colorScheme.errorContainer.copy(alpha = 0.8F)),
|
||||||
style = bodyTextStyle
|
style = bodyTextStyle
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -206,8 +198,15 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
Text("企业资产 : $financed",style=bodyTextStyle)
|
Text("企业资产 : $financed",style=bodyTextStyle)
|
||||||
}
|
}
|
||||||
if(VERSION.SDK_INT>=33){
|
if(VERSION.SDK_INT>=33){
|
||||||
Text("最小WiFi安全等级:${myDpm.minimumRequiredWifiSecurityLevel}",style=bodyTextStyle)
|
val dpmRole = myDpm.devicePolicyManagementRoleHolderPackage
|
||||||
Text("设备策略管理器角色:${myDpm.devicePolicyManagementRoleHolderPackage}",style=bodyTextStyle)
|
Text("设备策略管理器角色:${if(dpmRole==null){"null"}else{""}}",style=bodyTextStyle)
|
||||||
|
if(dpmRole!=null){
|
||||||
|
Row(modifier = Modifier.fillMaxWidth().horizontalScroll(rememberScrollState())){
|
||||||
|
SelectionContainer {
|
||||||
|
Text(dpmRole)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
val encryptionStatus = mapOf(
|
val encryptionStatus = mapOf(
|
||||||
DevicePolicyManager.ENCRYPTION_STATUS_INACTIVE to "未使用",
|
DevicePolicyManager.ENCRYPTION_STATUS_INACTIVE to "未使用",
|
||||||
@@ -218,8 +217,21 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
DevicePolicyManager.ENCRYPTION_STATUS_ACTIVATING to "未知"
|
DevicePolicyManager.ENCRYPTION_STATUS_ACTIVATING to "未知"
|
||||||
)
|
)
|
||||||
Text("加密状态:${encryptionStatus[myDpm.storageEncryptionStatus]}",style=bodyTextStyle)
|
Text("加密状态:${encryptionStatus[myDpm.storageEncryptionStatus]}",style=bodyTextStyle)
|
||||||
if(isDeviceOwner(myDpm)&&VERSION.SDK_INT>=34){
|
val adminList = myDpm.activeAdmins
|
||||||
Text("MTE策略:${myDpm.mtePolicy}",style=bodyTextStyle)
|
if(adminList!=null){
|
||||||
|
var adminListText = ""
|
||||||
|
Text(text = "激活的Device admin: ${adminList.size}", style = bodyTextStyle)
|
||||||
|
var count = adminList.size
|
||||||
|
for(each in adminList){
|
||||||
|
count -= 1
|
||||||
|
adminListText += "$each"
|
||||||
|
if(count>0){adminListText += "\n"}
|
||||||
|
}
|
||||||
|
Row(modifier = Modifier.fillMaxWidth().padding(vertical = 2.dp).horizontalScroll(rememberScrollState())){
|
||||||
|
SelectionContainer {
|
||||||
|
Text(text = adminListText, style = bodyTextStyle, color = titleColor)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -242,21 +254,24 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
Column(modifier = sections()) {
|
Column(modifier = sections()) {
|
||||||
Text(text = "不受控制的账号类型", style = typography.titleLarge,color = titleColor)
|
Text(text = "不受控制的账号类型", style = typography.titleLarge,color = titleColor)
|
||||||
Text("作用未知",style=bodyTextStyle)
|
Text("作用未知",style=bodyTextStyle)
|
||||||
var noManageAccount = myDpm.accountTypesWithManagementDisabled?.toMutableList()
|
var noManageAccount = myDpm.accountTypesWithManagementDisabled
|
||||||
var accountlist by remember{ mutableStateOf("") }
|
var accountlist by remember{ mutableStateOf("") }
|
||||||
val refreshList = {
|
val refreshList = {
|
||||||
accountlist = ""
|
accountlist = ""
|
||||||
if (noManageAccount != null) {
|
if (noManageAccount != null) {
|
||||||
|
var count = noManageAccount!!.size
|
||||||
for(eachAccount in noManageAccount!!){
|
for(eachAccount in noManageAccount!!){
|
||||||
accountlist+="$eachAccount \n"
|
count -= 1
|
||||||
|
accountlist += eachAccount
|
||||||
|
if(count>0){accountlist += "\n"}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
refreshList()
|
refreshList()
|
||||||
if(accountlist!=""){
|
if(accountlist!=""){
|
||||||
Text(accountlist)
|
Text(text = accountlist, color = titleColor)
|
||||||
}else{
|
}else{
|
||||||
Text("列表为空 \n",style=bodyTextStyle)
|
Text("无",style=bodyTextStyle)
|
||||||
}
|
}
|
||||||
var inputText by remember{ mutableStateOf("") }
|
var inputText by remember{ mutableStateOf("") }
|
||||||
TextField(
|
TextField(
|
||||||
@@ -270,14 +285,14 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
if(isWear){
|
if(isWear){
|
||||||
Button(onClick={focusManager.clearFocus()
|
Button(onClick={focusManager.clearFocus()
|
||||||
myDpm.setAccountManagementDisabled(myComponent,inputText,true)
|
myDpm.setAccountManagementDisabled(myComponent,inputText,true)
|
||||||
noManageAccount=myDpm.accountTypesWithManagementDisabled?.toMutableList()
|
noManageAccount=myDpm.accountTypesWithManagementDisabled
|
||||||
refreshList()
|
refreshList()
|
||||||
},modifier = Modifier.fillMaxWidth()){
|
},modifier = Modifier.fillMaxWidth()){
|
||||||
Text("添加至列表")
|
Text("添加至列表")
|
||||||
}
|
}
|
||||||
Button(onClick={focusManager.clearFocus()
|
Button(onClick={focusManager.clearFocus()
|
||||||
myDpm.setAccountManagementDisabled(myComponent,inputText,false)
|
myDpm.setAccountManagementDisabled(myComponent,inputText,false)
|
||||||
noManageAccount=myDpm.accountTypesWithManagementDisabled?.toMutableList()
|
noManageAccount=myDpm.accountTypesWithManagementDisabled
|
||||||
refreshList()
|
refreshList()
|
||||||
},modifier = Modifier.fillMaxWidth()){
|
},modifier = Modifier.fillMaxWidth()){
|
||||||
Text("从列表中移除")
|
Text("从列表中移除")
|
||||||
@@ -285,14 +300,14 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
Row(modifier = Modifier.fillMaxWidth(),horizontalArrangement = Arrangement.SpaceBetween){
|
Row(modifier = Modifier.fillMaxWidth(),horizontalArrangement = Arrangement.SpaceBetween){
|
||||||
Button(onClick={focusManager.clearFocus()
|
Button(onClick={focusManager.clearFocus()
|
||||||
myDpm.setAccountManagementDisabled(myComponent,inputText,true)
|
myDpm.setAccountManagementDisabled(myComponent,inputText,true)
|
||||||
noManageAccount=myDpm.accountTypesWithManagementDisabled?.toMutableList()
|
noManageAccount=myDpm.accountTypesWithManagementDisabled
|
||||||
refreshList()
|
refreshList()
|
||||||
},modifier = Modifier.fillMaxWidth(0.48f)){
|
},modifier = Modifier.fillMaxWidth(0.48f)){
|
||||||
Text("添加至列表")
|
Text("添加至列表")
|
||||||
}
|
}
|
||||||
Button(onClick={focusManager.clearFocus()
|
Button(onClick={focusManager.clearFocus()
|
||||||
myDpm.setAccountManagementDisabled(myComponent,inputText,false)
|
myDpm.setAccountManagementDisabled(myComponent,inputText,false)
|
||||||
noManageAccount=myDpm.accountTypesWithManagementDisabled?.toMutableList()
|
noManageAccount=myDpm.accountTypesWithManagementDisabled
|
||||||
refreshList()
|
refreshList()
|
||||||
},modifier = Modifier.fillMaxWidth(0.92F)){
|
},modifier = Modifier.fillMaxWidth(0.92F)){
|
||||||
Text("从列表中移除")
|
Text("从列表中移除")
|
||||||
@@ -321,7 +336,7 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
) { saveState = true }
|
) { saveState = true }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
colors = ButtonDefaults.buttonColors(contentColor = MaterialTheme.colorScheme.onError, containerColor = MaterialTheme.colorScheme.error),
|
colors = ButtonDefaults.buttonColors(contentColor = colorScheme.onError, containerColor = colorScheme.error),
|
||||||
enabled = myDpm.isAdminActive(myComponent)
|
enabled = myDpm.isAdminActive(myComponent)
|
||||||
) {
|
) {
|
||||||
Text("撤销Device admin")
|
Text("撤销Device admin")
|
||||||
@@ -336,7 +351,7 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
) { saveState = true }
|
) { saveState = true }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
colors = ButtonDefaults.buttonColors(contentColor = MaterialTheme.colorScheme.onError, containerColor = MaterialTheme.colorScheme.error),
|
colors = ButtonDefaults.buttonColors(contentColor = colorScheme.onError, containerColor = colorScheme.error),
|
||||||
enabled = isProfileOwner(myDpm)
|
enabled = isProfileOwner(myDpm)
|
||||||
) {
|
) {
|
||||||
Text("撤销Profile owner")
|
Text("撤销Profile owner")
|
||||||
@@ -351,7 +366,7 @@ fun DpmPermissions(navCtrl:NavHostController){
|
|||||||
) { saveState = true }
|
) { saveState = true }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
colors = ButtonDefaults.buttonColors(contentColor = MaterialTheme.colorScheme.onError, containerColor = MaterialTheme.colorScheme.error),
|
colors = ButtonDefaults.buttonColors(contentColor = colorScheme.onError, containerColor = colorScheme.error),
|
||||||
enabled = isDeviceOwner(myDpm)
|
enabled = isDeviceOwner(myDpm)
|
||||||
) {
|
) {
|
||||||
Text("撤销Device owner")
|
Text("撤销Device owner")
|
||||||
@@ -375,7 +390,7 @@ fun DeviceOwnerInfo(
|
|||||||
Column(modifier = sections()) {
|
Column(modifier = sections()) {
|
||||||
val sharedPref = LocalContext.current.getSharedPreferences("data", Context.MODE_PRIVATE)
|
val sharedPref = LocalContext.current.getSharedPreferences("data", Context.MODE_PRIVATE)
|
||||||
val isWear = sharedPref.getBoolean("isWear",false)
|
val isWear = sharedPref.getBoolean("isWear",false)
|
||||||
Text(text = stringResource(name), style = typography.titleLarge, softWrap = false, color = MaterialTheme.colorScheme.onPrimaryContainer)
|
Text(text = stringResource(name), style = typography.titleLarge, softWrap = false, color = colorScheme.onPrimaryContainer)
|
||||||
if(desc!=R.string.place_holder){
|
if(desc!=R.string.place_holder){
|
||||||
Text(
|
Text(
|
||||||
text = stringResource(desc),modifier = Modifier.padding(top = 6.dp),
|
text = stringResource(desc),modifier = Modifier.padding(top = 6.dp),
|
||||||
@@ -396,7 +411,7 @@ fun DeviceOwnerInfo(
|
|||||||
fm.clearFocus()
|
fm.clearFocus()
|
||||||
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
||||||
},
|
},
|
||||||
modifier = if(isWear){Modifier}else{Modifier.fillMaxWidth(0.6F)}
|
modifier = if(isWear){Modifier.fillMaxWidth(0.48F)}else{Modifier.fillMaxWidth(0.6F)}
|
||||||
) {
|
) {
|
||||||
Text(text = "应用")
|
Text(text = "应用")
|
||||||
}
|
}
|
||||||
@@ -407,7 +422,7 @@ fun DeviceOwnerInfo(
|
|||||||
fm.clearFocus()
|
fm.clearFocus()
|
||||||
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
||||||
},
|
},
|
||||||
modifier = if(isWear){Modifier}else{Modifier.fillMaxWidth(0.95F)}
|
modifier = Modifier.fillMaxWidth(0.95F)
|
||||||
) {
|
) {
|
||||||
Text(text = "重置")
|
Text(text = "重置")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -342,7 +342,7 @@ private fun UserSessionMessage(
|
|||||||
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
||||||
},
|
},
|
||||||
enabled = isDeviceOwner(myDpm)||(isProfileOwner(myDpm)&&profileOwner),
|
enabled = isDeviceOwner(myDpm)||(isProfileOwner(myDpm)&&profileOwner),
|
||||||
modifier = if(isWear){Modifier}else{Modifier.fillMaxWidth(0.65F)}
|
modifier = if(isWear){Modifier.fillMaxWidth(0.48F)}else{Modifier.fillMaxWidth(0.65F)}
|
||||||
) {
|
) {
|
||||||
Text("应用")
|
Text("应用")
|
||||||
}
|
}
|
||||||
@@ -354,7 +354,7 @@ private fun UserSessionMessage(
|
|||||||
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
Toast.makeText(myContext, "成功", Toast.LENGTH_SHORT).show()
|
||||||
},
|
},
|
||||||
enabled = isDeviceOwner(myDpm)||(isProfileOwner(myDpm)&&profileOwner),
|
enabled = isDeviceOwner(myDpm)||(isProfileOwner(myDpm)&&profileOwner),
|
||||||
modifier = if(isWear){Modifier}else{Modifier.fillMaxWidth(0.95F)}
|
modifier = Modifier.fillMaxWidth(0.92F)
|
||||||
) {
|
) {
|
||||||
Text("默认")
|
Text("默认")
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user