diff --git a/Readme.md b/Readme.md
index 785d9c4..317aad0 100644
--- a/Readme.md
+++ b/Readme.md
@@ -8,6 +8,8 @@
**从v4.2开始,重写代码,重新设计,界面会发生很大改变。**
+我正在为这个App取一个新的名字......
+
### 优点
- 开源。Device owner权限可能比root权限更危险,闭源软件的安全性没有保证
diff --git a/app/src/main/java/com/binbin/androidowner/MainActivity.kt b/app/src/main/java/com/binbin/androidowner/MainActivity.kt
index beceef5..4b2ba0d 100644
--- a/app/src/main/java/com/binbin/androidowner/MainActivity.kt
+++ b/app/src/main/java/com/binbin/androidowner/MainActivity.kt
@@ -87,7 +87,6 @@ fun MyScaffold(){
navController = navCtrl,
startDestination = "HomePage",
modifier = Modifier
- .statusBarsPadding()
.fillMaxSize()
.background(bgColor)
.imePadding()
@@ -131,8 +130,8 @@ private fun HomePage(navCtrl:NavHostController){
}
else if(myDpm.isAdminActive(myComponent)){"Device Admin"}else{""}
SetDarkTheme()
- Column(modifier = Modifier.verticalScroll(rememberScrollState())) {
- Spacer(Modifier.padding(vertical = 18.dp))
+ Column(modifier = Modifier.statusBarsPadding().verticalScroll(rememberScrollState())) {
+ Spacer(Modifier.padding(vertical = 25.dp))
Text(text = stringResource(R.string.app_name), style = typography.headlineLarge, modifier = Modifier.padding(start = 10.dp), color = colorScheme.onBackground)
Spacer(Modifier.padding(vertical = 8.dp))
Row(
@@ -174,11 +173,11 @@ private fun HomePage(navCtrl:NavHostController){
}
HomePageItem(R.string.app_manage, R.drawable.apps_fill0, "ApplicationManage", navCtrl)
if(VERSION.SDK_INT>=24){
- HomePageItem(R.string.user_restrict, R.drawable.manage_accounts_fill0, "UserRestriction", navCtrl)
+ HomePageItem(R.string.user_restrict, R.drawable.person_off, "UserRestriction", navCtrl)
}
- HomePageItem(R.string.user_manage,R.drawable.account_circle_fill0,"UserManage",navCtrl)
+ HomePageItem(R.string.user_manage,R.drawable.manage_accounts_fill0,"UserManage",navCtrl)
HomePageItem(R.string.password_and_keyguard, R.drawable.password_fill0, "Password",navCtrl)
- HomePageItem(R.string.setting, R.drawable.info_fill0, "AppSetting",navCtrl)
+ HomePageItem(R.string.setting, R.drawable.settings_fill0, "AppSetting",navCtrl)
Spacer(Modifier.padding(vertical = 20.dp))
}
}
diff --git a/app/src/main/java/com/binbin/androidowner/Setting.kt b/app/src/main/java/com/binbin/androidowner/Setting.kt
index 6adc319..d4d3797 100644
--- a/app/src/main/java/com/binbin/androidowner/Setting.kt
+++ b/app/src/main/java/com/binbin/androidowner/Setting.kt
@@ -64,8 +64,8 @@ fun AppSetting(navCtrl:NavHostController){
@Composable
private fun Home(navCtrl: NavHostController){
Column(modifier = Modifier.fillMaxSize()){
- SubPageItem(R.string.setting,""){navCtrl.navigate("Settings")}
- SubPageItem(R.string.about,""){navCtrl.navigate("About")}
+ SubPageItem(R.string.setting,"",R.drawable.settings_fill0){navCtrl.navigate("Settings")}
+ SubPageItem(R.string.about,"",R.drawable.info_fill0){navCtrl.navigate("About")}
}
}
diff --git a/app/src/main/java/com/binbin/androidowner/dpm/ApplicationManage.kt b/app/src/main/java/com/binbin/androidowner/dpm/ApplicationManage.kt
index b826a40..9252ed9 100644
--- a/app/src/main/java/com/binbin/androidowner/dpm/ApplicationManage.kt
+++ b/app/src/main/java/com/binbin/androidowner/dpm/ApplicationManage.kt
@@ -141,14 +141,14 @@ private fun Home(navCtrl:NavHostController, pkgName: String){
Text(text = stringResource(R.string.scope_is_work_profile), textAlign = TextAlign.Center,modifier = Modifier.fillMaxWidth().padding(vertical = 2.dp))
Spacer(Modifier.padding(vertical = 5.dp))
}
- SubPageItem(R.string.app_info,""){
+ SubPageItem(R.string.app_info,"",R.drawable.open_in_new){
val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS)
intent.setData(Uri.parse("package:$pkgName"))
startActivity(myContext,intent,null)
}
if(VERSION.SDK_INT>=24&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
SwitchItem(
- R.string.suspend,"",null,
+ R.string.suspend,"",R.drawable.block_fill0,
{
try{ myDpm.isPackageSuspended(myComponent,pkgName) }
catch(e:NameNotFoundException){ false }
@@ -159,13 +159,13 @@ private fun Home(navCtrl:NavHostController, pkgName: String){
}
if(isDeviceOwner(myDpm)||isProfileOwner(myDpm)){
SwitchItem(
- R.string.hide, stringResource(R.string.isapphidden_desc),null,
+ R.string.hide, stringResource(R.string.isapphidden_desc),R.drawable.visibility_off_fill0,
{myDpm.isApplicationHidden(myComponent,pkgName)},{myDpm.setApplicationHidden(myComponent, pkgName, it)}
)
}
if(VERSION.SDK_INT>=24&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
SwitchItem(
- R.string.always_on_vpn,"",null,{pkgName == myDpm.getAlwaysOnVpnPackage(myComponent)},
+ R.string.always_on_vpn,"",R.drawable.vpn_key_fill0,{pkgName == myDpm.getAlwaysOnVpnPackage(myComponent)},
{
try {
myDpm.setAlwaysOnVpnPackage(myComponent, pkgName, it)
@@ -178,39 +178,39 @@ private fun Home(navCtrl:NavHostController, pkgName: String){
)
}
if(isDeviceOwner(myDpm)||isProfileOwner(myDpm)){
- SubPageItem(R.string.block_uninstall,""){navCtrl.navigate("BlockUninstall")}
+ SubPageItem(R.string.block_uninstall,"",R.drawable.delete_forever_fill0){navCtrl.navigate("BlockUninstall")}
}
if(VERSION.SDK_INT>=30&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
- SubPageItem(R.string.ucd,""){navCtrl.navigate("UserControlDisabled")}
+ SubPageItem(R.string.ucd,"",R.drawable.do_not_touch_fill0){navCtrl.navigate("UserControlDisabled")}
}
if(VERSION.SDK_INT>=23&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
- SubPageItem(R.string.permission_manage,""){navCtrl.navigate("PermissionManage")}
+ SubPageItem(R.string.permission_manage,"",R.drawable.key_fill0){navCtrl.navigate("PermissionManage")}
}
if(VERSION.SDK_INT>=30&&isProfileOwner(myDpm)&&myDpm.isManagedProfile(myComponent)){
- SubPageItem(R.string.cross_profile_package,""){navCtrl.navigate("CrossProfilePackage")}
+ SubPageItem(R.string.cross_profile_package,"",R.drawable.work_fill0){navCtrl.navigate("CrossProfilePackage")}
}
if(isProfileOwner(myDpm)){
- SubPageItem(R.string.cross_profile_widget,""){navCtrl.navigate("CrossProfileWidget")}
+ SubPageItem(R.string.cross_profile_widget,"",R.drawable.widgets_fill0){navCtrl.navigate("CrossProfileWidget")}
}
if(VERSION.SDK_INT>=34&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.credential_manage_policy,""){navCtrl.navigate("CredentialManagePolicy")}
+ SubPageItem(R.string.credential_manage_policy,"",R.drawable.license_fill0){navCtrl.navigate("CredentialManagePolicy")}
}
if(isProfileOwner(myDpm)||isDeviceOwner(myDpm)){
- SubPageItem(R.string.permitted_accessibility_app,""){navCtrl.navigate("Accessibility")}
+ SubPageItem(R.string.permitted_accessibility_app,"",R.drawable.settings_accessibility_fill0){navCtrl.navigate("Accessibility")}
}
if(isDeviceOwner(myDpm)||isProfileOwner(myDpm)){
- SubPageItem(R.string.permitted_ime,""){navCtrl.navigate("IME")}
+ SubPageItem(R.string.permitted_ime,"",R.drawable.keyboard_fill0){navCtrl.navigate("IME")}
}
if(VERSION.SDK_INT>=28&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.keep_uninstalled_pkgs,""){navCtrl.navigate("KeepUninstalled")}
+ SubPageItem(R.string.keep_uninstalled_pkgs,"",R.drawable.delete_fill0){navCtrl.navigate("KeepUninstalled")}
}
if(VERSION.SDK_INT>=28){
- SubPageItem(R.string.clear_app_data,""){navCtrl.navigate("ClearAppData")}
+ SubPageItem(R.string.clear_app_data,"",R.drawable.mop_fill0){navCtrl.navigate("ClearAppData")}
}
- SubPageItem(R.string.install_app,""){navCtrl.navigate("InstallApp")}
- SubPageItem(R.string.uninstall_app,""){navCtrl.navigate("UninstallApp")}
+ SubPageItem(R.string.install_app,"",R.drawable.install_mobile_fill0){navCtrl.navigate("InstallApp")}
+ SubPageItem(R.string.uninstall_app,"",R.drawable.delete_fill0){navCtrl.navigate("UninstallApp")}
if(VERSION.SDK_INT>=34){
- SubPageItem(R.string.set_default_dialer,""){navCtrl.navigate("DefaultDialer")}
+ SubPageItem(R.string.set_default_dialer,"",R.drawable.call_fill0){navCtrl.navigate("DefaultDialer")}
}
Spacer(Modifier.padding(vertical = 30.dp))
}
diff --git a/app/src/main/java/com/binbin/androidowner/dpm/Network.kt b/app/src/main/java/com/binbin/androidowner/dpm/Network.kt
index e632fe8..c059645 100644
--- a/app/src/main/java/com/binbin/androidowner/dpm/Network.kt
+++ b/app/src/main/java/com/binbin/androidowner/dpm/Network.kt
@@ -96,31 +96,31 @@ private fun Home(navCtrl:NavHostController){
val myComponent = ComponentName(myContext,MyDeviceAdminReceiver::class.java)
Column(modifier = Modifier.fillMaxSize().verticalScroll(rememberScrollState())){
Text(text = stringResource(R.string.network), style = typography.headlineLarge, modifier = Modifier.padding(top = 8.dp, bottom = 5.dp, start = 15.dp))
- if(VERSION.SDK_INT>=24){
- val wifimac = try { myDpm.getWifiMacAddress(myComponent).toString() }catch(e:SecurityException){ "没有权限" }
+ if(VERSION.SDK_INT>=24&&isDeviceOwner(myDpm)){
+ val wifimac = myDpm.getWifiMacAddress(myComponent)
Text(text = "WiFi MAC: $wifimac", modifier = Modifier.padding(start = 15.dp))
}
Spacer(Modifier.padding(vertical = 3.dp))
if(VERSION.SDK_INT>=30){
- SubPageItem(R.string.options,""){navCtrl.navigate("Switches")}
+ SubPageItem(R.string.options,"",R.drawable.tune_fill0){navCtrl.navigate("Switches")}
}
if(VERSION.SDK_INT>=33){
- SubPageItem(R.string.min_wifi_security_level,""){navCtrl.navigate("MinWifiSecurityLevel")}
+ SubPageItem(R.string.min_wifi_security_level,"",R.drawable.wifi_password_fill0){navCtrl.navigate("MinWifiSecurityLevel")}
}
if(VERSION.SDK_INT>=33&&(isDeviceOwner(myDpm)||(isProfileOwner(myDpm)&&myDpm.isOrganizationOwnedDeviceWithManagedProfile))){
- SubPageItem(R.string.wifi_ssid_policy,""){navCtrl.navigate("WifiSsidPolicy")}
+ SubPageItem(R.string.wifi_ssid_policy,"",R.drawable.wifi_fill0){navCtrl.navigate("WifiSsidPolicy")}
}
if(VERSION.SDK_INT>=29&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.private_dns,""){navCtrl.navigate("PrivateDNS")}
+ SubPageItem(R.string.private_dns,"",R.drawable.dns_fill0){navCtrl.navigate("PrivateDNS")}
}
if(VERSION.SDK_INT>=26&&(isDeviceOwner(myDpm)||(isProfileOwner(myDpm)&&myDpm.isManagedProfile(myComponent)))){
- SubPageItem(R.string.retrieve_net_logs,""){navCtrl.navigate("NetLog")}
+ SubPageItem(R.string.retrieve_net_logs,"",R.drawable.description_fill0){navCtrl.navigate("NetLog")}
}
if(VERSION.SDK_INT>=31&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
- SubPageItem(R.string.wifi_keypair,""){navCtrl.navigate("WifiKeypair")}
+ SubPageItem(R.string.wifi_keypair,"",R.drawable.key_fill0){navCtrl.navigate("WifiKeypair")}
}
if(VERSION.SDK_INT>=28&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.apn_settings,""){navCtrl.navigate("APN")}
+ SubPageItem(R.string.apn_settings,"",R.drawable.cell_tower_fill0){navCtrl.navigate("APN")}
}
Spacer(Modifier.padding(vertical = 30.dp))
}
diff --git a/app/src/main/java/com/binbin/androidowner/dpm/Password.kt b/app/src/main/java/com/binbin/androidowner/dpm/Password.kt
index 5bebeb6..c096a75 100644
--- a/app/src/main/java/com/binbin/androidowner/dpm/Password.kt
+++ b/app/src/main/java/com/binbin/androidowner/dpm/Password.kt
@@ -92,20 +92,20 @@ fun Password(navCtrl: NavHostController){
private fun Home(navCtrl:NavHostController){
Column(modifier = Modifier.fillMaxSize().verticalScroll(rememberScrollState())){
Text(text = stringResource(R.string.password_and_keyguard), style = typography.headlineLarge, modifier = Modifier.padding(top = 8.dp, bottom = 5.dp, start = 15.dp))
- SubPageItem(R.string.password_info,""){navCtrl.navigate("PasswordInfo")}
+ SubPageItem(R.string.password_info,"",R.drawable.info_fill0){navCtrl.navigate("PasswordInfo")}
if(VERSION.SDK_INT>=26){
- SubPageItem(R.string.reset_password_token,""){navCtrl.navigate("ResetPasswordToken")}
+ SubPageItem(R.string.reset_password_token,"",R.drawable.key_vertical_fill0){navCtrl.navigate("ResetPasswordToken")}
}
- SubPageItem(R.string.reset_password,""){navCtrl.navigate("ResetPassword")}
+ SubPageItem(R.string.reset_password,"",R.drawable.lock_reset_fill0){navCtrl.navigate("ResetPassword")}
if(VERSION.SDK_INT>=31){
- SubPageItem(R.string.required_password_complexity,""){navCtrl.navigate("RequirePasswordComplexity")}
+ SubPageItem(R.string.required_password_complexity,"",R.drawable.password_fill0){navCtrl.navigate("RequirePasswordComplexity")}
}
- SubPageItem(R.string.keyguard_disabled_features,""){navCtrl.navigate("KeyguardDisabledFeatures")}
- SubPageItem(R.string.max_time_to_lock,""){navCtrl.navigate("MaxTimeToLock")}
- SubPageItem(R.string.pwd_timeout,""){navCtrl.navigate("PasswordTimeout")}
- SubPageItem(R.string.max_pwd_fail,""){navCtrl.navigate("MaxPasswordFail")}
- SubPageItem(R.string.pwd_history,""){navCtrl.navigate("PasswordHistoryLength")}
- SubPageItem(R.string.required_password_quality,""){navCtrl.navigate("RequirePasswordQuality")}
+ SubPageItem(R.string.keyguard_disabled_features,"",R.drawable.screen_lock_portrait_fill0){navCtrl.navigate("KeyguardDisabledFeatures")}
+ SubPageItem(R.string.max_time_to_lock,"",R.drawable.schedule_fill0){navCtrl.navigate("MaxTimeToLock")}
+ SubPageItem(R.string.pwd_timeout,"",R.drawable.lock_clock_fill0){navCtrl.navigate("PasswordTimeout")}
+ SubPageItem(R.string.max_pwd_fail,"",R.drawable.no_encryption_fill0){navCtrl.navigate("MaxPasswordFail")}
+ SubPageItem(R.string.pwd_history,"",R.drawable.history_fill0){navCtrl.navigate("PasswordHistoryLength")}
+ SubPageItem(R.string.required_password_quality,"",R.drawable.password_fill0){navCtrl.navigate("RequirePasswordQuality")}
Spacer(Modifier.padding(vertical = 30.dp))
}
}
diff --git a/app/src/main/java/com/binbin/androidowner/dpm/Permissions.kt b/app/src/main/java/com/binbin/androidowner/dpm/Permissions.kt
index 7cddd1b..f4a8db0 100644
--- a/app/src/main/java/com/binbin/androidowner/dpm/Permissions.kt
+++ b/app/src/main/java/com/binbin/androidowner/dpm/Permissions.kt
@@ -115,24 +115,24 @@ private fun Home(localNavCtrl:NavHostController){
operation = {localNavCtrl.navigate("DeviceOwner")}
)
SubPageItem(R.string.shizuku,""){localNavCtrl.navigate("Shizuku")}
- SubPageItem(R.string.device_info,""){localNavCtrl.navigate("DeviceInfo")}
+ SubPageItem(R.string.device_info,"",R.drawable.perm_device_information_fill0){localNavCtrl.navigate("DeviceInfo")}
if(VERSION.SDK_INT>=31&&(isProfileOwner(myDpm)|| isDeviceOwner(myDpm))){
- SubPageItem(R.string.enrollment_specific_id,""){localNavCtrl.navigate("SpecificID")}
+ SubPageItem(R.string.enrollment_specific_id,"",R.drawable.id_card_fill0){localNavCtrl.navigate("SpecificID")}
}
if((VERSION.SDK_INT>=26&&isDeviceOwner(myDpm))||(VERSION.SDK_INT>=24&&isProfileOwner(myDpm))){
- SubPageItem(R.string.org_name,""){localNavCtrl.navigate("OrgName")}
+ SubPageItem(R.string.org_name,"",R.drawable.corporate_fare_fill0){localNavCtrl.navigate("OrgName")}
}
if(isDeviceOwner(myDpm) || isProfileOwner(myDpm)){
- SubPageItem(R.string.account_types_management_disabled,""){localNavCtrl.navigate("NoManagementAccount")}
+ SubPageItem(R.string.account_types_management_disabled,"",R.drawable.account_circle_fill0){localNavCtrl.navigate("NoManagementAccount")}
}
if(VERSION.SDK_INT>=24&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.owner_lockscr_info,""){localNavCtrl.navigate("LockScreenInfo")}
+ SubPageItem(R.string.owner_lockscr_info,"",R.drawable.screen_lock_portrait_fill0){localNavCtrl.navigate("LockScreenInfo")}
}
if(VERSION.SDK_INT>=24&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
- SubPageItem(R.string.support_msg,""){localNavCtrl.navigate("SupportMsg")}
+ SubPageItem(R.string.support_msg,"",R.drawable.chat_fill0){localNavCtrl.navigate("SupportMsg")}
}
if(VERSION.SDK_INT>=28&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
- SubPageItem(R.string.transform_ownership,""){localNavCtrl.navigate("TransformOwnership")}
+ SubPageItem(R.string.transform_ownership,"",R.drawable.admin_panel_settings_fill0){localNavCtrl.navigate("TransformOwnership")}
}
Spacer(Modifier.padding(vertical = 30.dp))
}
diff --git a/app/src/main/java/com/binbin/androidowner/dpm/SystemManage.kt b/app/src/main/java/com/binbin/androidowner/dpm/SystemManage.kt
index 703de8b..a21227d 100644
--- a/app/src/main/java/com/binbin/androidowner/dpm/SystemManage.kt
+++ b/app/src/main/java/com/binbin/androidowner/dpm/SystemManage.kt
@@ -112,38 +112,38 @@ private fun Home(navCtrl: NavHostController){
Column(modifier = Modifier.fillMaxSize().verticalScroll(rememberScrollState())){
Text(text = stringResource(R.string.device_ctrl), style = typography.headlineLarge, modifier = Modifier.padding(top = 8.dp, bottom = 5.dp, start = 15.dp))
if(isDeviceOwner(myDpm)||isProfileOwner(myDpm)){
- SubPageItem(R.string.options,""){navCtrl.navigate("Switches")}
+ SubPageItem(R.string.options,"",R.drawable.tune_fill0){navCtrl.navigate("Switches")}
}
- SubPageItem(R.string.keyguard,""){navCtrl.navigate("Keyguard")}
+ SubPageItem(R.string.keyguard,"",R.drawable.screen_lock_portrait_fill0){navCtrl.navigate("Keyguard")}
if(VERSION.SDK_INT>=24){
- SubPageItem(R.string.request_bug_report,""){navCtrl.navigate("BugReport")}
- SubPageItem(R.string.reboot,""){navCtrl.navigate("Reboot")}
+ SubPageItem(R.string.request_bug_report,"",R.drawable.bug_report_fill0){navCtrl.navigate("BugReport")}
+ SubPageItem(R.string.reboot,"",R.drawable.restart_alt_fill0){navCtrl.navigate("Reboot")}
}
if(VERSION.SDK_INT>=28){
- SubPageItem(R.string.edit_time,""){navCtrl.navigate("EditTime")}
+ SubPageItem(R.string.edit_time,"",R.drawable.schedule_fill0){navCtrl.navigate("EditTime")}
}
if(VERSION.SDK_INT>=23&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
- SubPageItem(R.string.permission_policy,""){navCtrl.navigate("PermissionPolicy")}
+ SubPageItem(R.string.permission_policy,"",R.drawable.key_fill0){navCtrl.navigate("PermissionPolicy")}
}
if(VERSION.SDK_INT>=34&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.mte_policy,""){navCtrl.navigate("MTEPolicy")}
+ SubPageItem(R.string.mte_policy,"",R.drawable.memory_fill0){navCtrl.navigate("MTEPolicy")}
}
if(VERSION.SDK_INT>=31&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
- SubPageItem(R.string.nearby_streaming_policy,""){navCtrl.navigate("NearbyStreamingPolicy")}
+ SubPageItem(R.string.nearby_streaming_policy,"",R.drawable.share_fill0){navCtrl.navigate("NearbyStreamingPolicy")}
}
if(VERSION.SDK_INT>=28&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.lock_task_feature,""){navCtrl.navigate("LockTaskFeatures")}
+ SubPageItem(R.string.lock_task_feature,"",R.drawable.lock_fill0){navCtrl.navigate("LockTaskFeatures")}
}
if(isDeviceOwner(myDpm)||isProfileOwner(myDpm)){
- SubPageItem(R.string.ca_cert,""){navCtrl.navigate("CaCert")}
+ SubPageItem(R.string.ca_cert,"",R.drawable.license_fill0){navCtrl.navigate("CaCert")}
}
if(VERSION.SDK_INT>=26&&(isDeviceOwner(myDpm)||(VERSION.SDK_INT>=30&&isProfileOwner(myDpm)&&myDpm.isOrganizationOwnedDeviceWithManagedProfile))){
- SubPageItem(R.string.security_logs,""){navCtrl.navigate("SecurityLogs")}
+ SubPageItem(R.string.security_logs,"",R.drawable.description_fill0){navCtrl.navigate("SecurityLogs")}
}
if(VERSION.SDK_INT>=23&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.system_update_policy,""){navCtrl.navigate("SystemUpdatePolicy")}
+ SubPageItem(R.string.system_update_policy,"",R.drawable.system_update_fill0){navCtrl.navigate("SystemUpdatePolicy")}
}
- SubPageItem(R.string.wipe_data,""){navCtrl.navigate("WipeData")}
+ SubPageItem(R.string.wipe_data,"",R.drawable.warning_fill0){navCtrl.navigate("WipeData")}
Spacer(Modifier.padding(vertical = 30.dp))
LaunchedEffect(Unit){caCert=byteArrayOf()}
}
diff --git a/app/src/main/java/com/binbin/androidowner/dpm/UserManage.kt b/app/src/main/java/com/binbin/androidowner/dpm/UserManage.kt
index 2640982..f220280 100644
--- a/app/src/main/java/com/binbin/androidowner/dpm/UserManage.kt
+++ b/app/src/main/java/com/binbin/androidowner/dpm/UserManage.kt
@@ -96,20 +96,20 @@ private fun Home(navCtrl: NavHostController){
val myDpm = myContext.getSystemService(ComponentActivity.DEVICE_POLICY_SERVICE) as DevicePolicyManager
Column(modifier = Modifier.fillMaxSize().verticalScroll(rememberScrollState())){
Text(text = stringResource(R.string.user_manage), style = typography.headlineLarge, modifier = Modifier.padding(top = 8.dp, bottom = 5.dp, start = 15.dp))
- SubPageItem(R.string.user_info,""){navCtrl.navigate("UserInfo")}
- SubPageItem(R.string.user_operation,""){navCtrl.navigate("UserOperation")}
+ SubPageItem(R.string.user_info,"",R.drawable.person_fill0){navCtrl.navigate("UserInfo")}
+ SubPageItem(R.string.user_operation,"",R.drawable.sync_alt_fill0){navCtrl.navigate("UserOperation")}
if(VERSION.SDK_INT>=24&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.create_user,""){navCtrl.navigate("CreateUser")}
+ SubPageItem(R.string.create_user,"",R.drawable.person_add_fill0){navCtrl.navigate("CreateUser")}
}
- SubPageItem(R.string.edit_username,""){navCtrl.navigate("EditUsername")}
+ SubPageItem(R.string.edit_username,"",R.drawable.edit_fill0){navCtrl.navigate("EditUsername")}
if(VERSION.SDK_INT>=23&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
- SubPageItem(R.string.change_user_icon,""){navCtrl.navigate("ChangeUserIcon")}
+ SubPageItem(R.string.change_user_icon,"",R.drawable.account_circle_fill0){navCtrl.navigate("ChangeUserIcon")}
}
if(VERSION.SDK_INT>=28&&isDeviceOwner(myDpm)){
- SubPageItem(R.string.user_session_msg,""){navCtrl.navigate("UserSessionMessage")}
+ SubPageItem(R.string.user_session_msg,"",R.drawable.notifications_fill0){navCtrl.navigate("UserSessionMessage")}
}
if(VERSION.SDK_INT>=26&&(isDeviceOwner(myDpm)||isProfileOwner(myDpm))){
- SubPageItem(R.string.affiliation_id,""){navCtrl.navigate("AffiliationID")}
+ SubPageItem(R.string.affiliation_id,"",R.drawable.id_card_fill0){navCtrl.navigate("AffiliationID")}
}
Spacer(Modifier.padding(vertical = 30.dp))
}
diff --git a/app/src/main/java/com/binbin/androidowner/dpm/UserRestriction.kt b/app/src/main/java/com/binbin/androidowner/dpm/UserRestriction.kt
index 8d24ab7..58c9e79 100644
--- a/app/src/main/java/com/binbin/androidowner/dpm/UserRestriction.kt
+++ b/app/src/main/java/com/binbin/androidowner/dpm/UserRestriction.kt
@@ -99,12 +99,12 @@ private fun Home(navCtrl:NavHostController){
Text(text = stringResource(R.string.some_features_invalid_in_work_profile), modifier = Modifier.padding(start = 15.dp))
}
Spacer(Modifier.padding(vertical = 2.dp))
- SubPageItem(R.string.network_internet,""){navCtrl.navigate("Internet")}
- SubPageItem(R.string.more_connectivity,""){navCtrl.navigate("Connectivity")}
- SubPageItem(R.string.applications,""){navCtrl.navigate("Applications")}
- SubPageItem(R.string.users,""){navCtrl.navigate("Users")}
- SubPageItem(R.string.media,""){navCtrl.navigate("Media")}
- SubPageItem(R.string.other,""){navCtrl.navigate("Other")}
+ SubPageItem(R.string.network_internet,"",R.drawable.wifi_fill0){navCtrl.navigate("Internet")}
+ SubPageItem(R.string.more_connectivity,"",R.drawable.devices_other_fill0){navCtrl.navigate("Connectivity")}
+ SubPageItem(R.string.applications,"",R.drawable.apps_fill0){navCtrl.navigate("Applications")}
+ SubPageItem(R.string.users,"",R.drawable.account_circle_fill0){navCtrl.navigate("Users")}
+ SubPageItem(R.string.media,"",R.drawable.volume_up_fill0){navCtrl.navigate("Media")}
+ SubPageItem(R.string.other,"",R.drawable.more_horiz_fill0){navCtrl.navigate("Other")}
Spacer(Modifier.padding(vertical = 30.dp))
}
}
diff --git a/app/src/main/java/com/binbin/androidowner/ui/Components.kt b/app/src/main/java/com/binbin/androidowner/ui/Components.kt
index b461137..ef5df1d 100644
--- a/app/src/main/java/com/binbin/androidowner/ui/Components.kt
+++ b/app/src/main/java/com/binbin/androidowner/ui/Components.kt
@@ -21,20 +21,28 @@ import androidx.compose.ui.unit.dp
import androidx.navigation.NavBackStackEntry
import androidx.navigation.NavHostController
import com.binbin.androidowner.R
+import com.binbin.androidowner.displayMetrics
import com.binbin.androidowner.ui.theme.bgColor
@Composable
fun SubPageItem(
@StringRes title: Int,
desc:String,
+ @DrawableRes icon: Int? = null,
operation: () -> Unit
){
Row(
- modifier = Modifier.fillMaxWidth().clickable(onClick = operation).padding(vertical = 15.dp)
+ modifier = Modifier.fillMaxWidth().clickable(onClick = operation).padding(vertical = 15.dp),
+ verticalAlignment = Alignment.CenterVertically
){
- Spacer(Modifier.fillMaxWidth(0.07F))
+ Spacer(Modifier.padding(start = (displayMetrics.widthPixels/20).dp))
+ if(icon!=null){
+ Spacer(Modifier.padding(start = (displayMetrics.widthPixels/60).dp))
+ Icon(painter = painterResource(icon), contentDescription = stringResource(title), modifier = Modifier.padding(top = 1.dp))
+ Spacer(Modifier.padding(start = (displayMetrics.widthPixels/30).dp))
+ }
Column {
- Text(text = stringResource(title), style = typography.titleLarge)
+ Text(text = stringResource(title), style = typography.titleLarge, modifier = Modifier.padding(bottom = 1.dp))
if(desc!=""){Text(text = desc, color = colorScheme.onBackground.copy(alpha = 0.8F))}
}
}
@@ -48,7 +56,7 @@ fun NavIcon(operation: () -> Unit){
modifier = Modifier
.padding(horizontal = 6.dp)
.clip(RoundedCornerShape(50))
- .clickable{ operation() }
+ .clickable(onClick = operation)
.padding(5.dp)
)
}
@@ -123,10 +131,11 @@ fun SwitchItem(
checked = getState()
Box(modifier = Modifier.fillMaxWidth().padding(vertical = 5.dp)) {
Row(verticalAlignment = Alignment.CenterVertically, modifier = Modifier.align(Alignment.CenterStart)){
- Spacer(Modifier.fillMaxWidth(0.07F))
+ Spacer(Modifier.padding(start = (displayMetrics.widthPixels/20).dp))
if(icon!=null){
+ Spacer(Modifier.padding(start = (displayMetrics.widthPixels/60).dp))
Icon(painter = painterResource(icon),contentDescription = null)
- Spacer(Modifier.fillMaxWidth(0.08F))
+ Spacer(Modifier.padding(start = (displayMetrics.widthPixels/30).dp))
}
Column(modifier = Modifier.padding(end = 60.dp)){
Text(text = stringResource(title), style = typography.titleLarge)
diff --git a/app/src/main/java/com/binbin/androidowner/ui/theme/Theme.kt b/app/src/main/java/com/binbin/androidowner/ui/theme/Theme.kt
index 8f601f9..44f1a3c 100644
--- a/app/src/main/java/com/binbin/androidowner/ui/theme/Theme.kt
+++ b/app/src/main/java/com/binbin/androidowner/ui/theme/Theme.kt
@@ -118,7 +118,7 @@ fun AndroidOwnerTheme(
if (!view.isInEditMode) {
SideEffect {
val window = (view.context as Activity).window
- window.statusBarColor = bgColor.toArgb()
+ window.statusBarColor = Color.Transparent.toArgb()
WindowCompat.getInsetsController(window, view).isAppearanceLightStatusBars = !darkTheme
}
}
diff --git a/app/src/main/res/drawable/admin_panel_settings_fill0.xml b/app/src/main/res/drawable/admin_panel_settings_fill0.xml
new file mode 100644
index 0000000..bca62e7
--- /dev/null
+++ b/app/src/main/res/drawable/admin_panel_settings_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/bug_report_fill0.xml b/app/src/main/res/drawable/bug_report_fill0.xml
new file mode 100644
index 0000000..ef2c053
--- /dev/null
+++ b/app/src/main/res/drawable/bug_report_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/call_fill0.xml b/app/src/main/res/drawable/call_fill0.xml
new file mode 100644
index 0000000..98b0eee
--- /dev/null
+++ b/app/src/main/res/drawable/call_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/chat_fill0.xml b/app/src/main/res/drawable/chat_fill0.xml
new file mode 100644
index 0000000..ec9b3a7
--- /dev/null
+++ b/app/src/main/res/drawable/chat_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/corporate_fare_fill0.xml b/app/src/main/res/drawable/corporate_fare_fill0.xml
new file mode 100644
index 0000000..91e694b
--- /dev/null
+++ b/app/src/main/res/drawable/corporate_fare_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/delete_forever_fill0.xml b/app/src/main/res/drawable/delete_forever_fill0.xml
new file mode 100644
index 0000000..b278d29
--- /dev/null
+++ b/app/src/main/res/drawable/delete_forever_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/description_fill0.xml b/app/src/main/res/drawable/description_fill0.xml
new file mode 100644
index 0000000..3fff890
--- /dev/null
+++ b/app/src/main/res/drawable/description_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/devices_other_fill0.xml b/app/src/main/res/drawable/devices_other_fill0.xml
new file mode 100644
index 0000000..a2412b7
--- /dev/null
+++ b/app/src/main/res/drawable/devices_other_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/do_not_touch_fill0.xml b/app/src/main/res/drawable/do_not_touch_fill0.xml
new file mode 100644
index 0000000..512bd4c
--- /dev/null
+++ b/app/src/main/res/drawable/do_not_touch_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/edit_fill0.xml b/app/src/main/res/drawable/edit_fill0.xml
new file mode 100644
index 0000000..0a67598
--- /dev/null
+++ b/app/src/main/res/drawable/edit_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/history_fill0.xml b/app/src/main/res/drawable/history_fill0.xml
new file mode 100644
index 0000000..95294f1
--- /dev/null
+++ b/app/src/main/res/drawable/history_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/id_card_fill0.xml b/app/src/main/res/drawable/id_card_fill0.xml
new file mode 100644
index 0000000..78f06cb
--- /dev/null
+++ b/app/src/main/res/drawable/id_card_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/install_mobile_fill0.xml b/app/src/main/res/drawable/install_mobile_fill0.xml
new file mode 100644
index 0000000..fc3b838
--- /dev/null
+++ b/app/src/main/res/drawable/install_mobile_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/key_fill0.xml b/app/src/main/res/drawable/key_fill0.xml
new file mode 100644
index 0000000..608bbb6
--- /dev/null
+++ b/app/src/main/res/drawable/key_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/key_vertical_fill0.xml b/app/src/main/res/drawable/key_vertical_fill0.xml
new file mode 100644
index 0000000..ac261bc
--- /dev/null
+++ b/app/src/main/res/drawable/key_vertical_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/keyboard_fill0.xml b/app/src/main/res/drawable/keyboard_fill0.xml
new file mode 100644
index 0000000..c8a5a6b
--- /dev/null
+++ b/app/src/main/res/drawable/keyboard_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/license_fill0.xml b/app/src/main/res/drawable/license_fill0.xml
new file mode 100644
index 0000000..ae297e8
--- /dev/null
+++ b/app/src/main/res/drawable/license_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/lock_clock_fill0.xml b/app/src/main/res/drawable/lock_clock_fill0.xml
new file mode 100644
index 0000000..07323af
--- /dev/null
+++ b/app/src/main/res/drawable/lock_clock_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/lock_fill0.xml b/app/src/main/res/drawable/lock_fill0.xml
new file mode 100644
index 0000000..381ffe3
--- /dev/null
+++ b/app/src/main/res/drawable/lock_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/lock_reset_fill0.xml b/app/src/main/res/drawable/lock_reset_fill0.xml
new file mode 100644
index 0000000..dfca657
--- /dev/null
+++ b/app/src/main/res/drawable/lock_reset_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/memory_fill0.xml b/app/src/main/res/drawable/memory_fill0.xml
new file mode 100644
index 0000000..4838bdf
--- /dev/null
+++ b/app/src/main/res/drawable/memory_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/mop_fill0.xml b/app/src/main/res/drawable/mop_fill0.xml
new file mode 100644
index 0000000..a926aef
--- /dev/null
+++ b/app/src/main/res/drawable/mop_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/more_horiz_fill0.xml b/app/src/main/res/drawable/more_horiz_fill0.xml
new file mode 100644
index 0000000..e4c7c00
--- /dev/null
+++ b/app/src/main/res/drawable/more_horiz_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/no_encryption_fill0.xml b/app/src/main/res/drawable/no_encryption_fill0.xml
new file mode 100644
index 0000000..b74cd54
--- /dev/null
+++ b/app/src/main/res/drawable/no_encryption_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/perm_device_information_fill0.xml b/app/src/main/res/drawable/perm_device_information_fill0.xml
new file mode 100644
index 0000000..d3136ad
--- /dev/null
+++ b/app/src/main/res/drawable/perm_device_information_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/person_add_fill0.xml b/app/src/main/res/drawable/person_add_fill0.xml
new file mode 100644
index 0000000..facdc3e
--- /dev/null
+++ b/app/src/main/res/drawable/person_add_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/person_fill0.xml b/app/src/main/res/drawable/person_fill0.xml
new file mode 100644
index 0000000..8b2b331
--- /dev/null
+++ b/app/src/main/res/drawable/person_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/person_off.xml b/app/src/main/res/drawable/person_off.xml
new file mode 100644
index 0000000..3754a89
--- /dev/null
+++ b/app/src/main/res/drawable/person_off.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/restart_alt_fill0.xml b/app/src/main/res/drawable/restart_alt_fill0.xml
new file mode 100644
index 0000000..161777a
--- /dev/null
+++ b/app/src/main/res/drawable/restart_alt_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/settings_accessibility_fill0.xml b/app/src/main/res/drawable/settings_accessibility_fill0.xml
new file mode 100644
index 0000000..c067b23
--- /dev/null
+++ b/app/src/main/res/drawable/settings_accessibility_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/settings_fill0.xml b/app/src/main/res/drawable/settings_fill0.xml
new file mode 100644
index 0000000..240aeed
--- /dev/null
+++ b/app/src/main/res/drawable/settings_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/sync_alt_fill0.xml b/app/src/main/res/drawable/sync_alt_fill0.xml
new file mode 100644
index 0000000..adfadbe
--- /dev/null
+++ b/app/src/main/res/drawable/sync_alt_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/system_update_fill0.xml b/app/src/main/res/drawable/system_update_fill0.xml
new file mode 100644
index 0000000..0613487
--- /dev/null
+++ b/app/src/main/res/drawable/system_update_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/tune_fill0.xml b/app/src/main/res/drawable/tune_fill0.xml
new file mode 100644
index 0000000..0b8040d
--- /dev/null
+++ b/app/src/main/res/drawable/tune_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/visibility_off_fill0.xml b/app/src/main/res/drawable/visibility_off_fill0.xml
new file mode 100644
index 0000000..7caf3e5
--- /dev/null
+++ b/app/src/main/res/drawable/visibility_off_fill0.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/widgets_fill0.xml b/app/src/main/res/drawable/widgets_fill0.xml
new file mode 100644
index 0000000..3d52c5f
--- /dev/null
+++ b/app/src/main/res/drawable/widgets_fill0.xml
@@ -0,0 +1,9 @@
+
+
+