diff --git a/app/build.gradle.kts b/app/build.gradle.kts index b31e5e6..8418662 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -19,8 +19,8 @@ android { applicationId = "com.bintianqi.owndroid" minSdk = 21 targetSdk = 34 - versionCode = 26 - versionName = "5.1" + versionCode = 27 + versionName = "5.2" multiDexEnabled = false signingConfig = signingConfigs.getByName("testkey") } diff --git a/app/src/main/java/com/bintianqi/owndroid/MainActivity.kt b/app/src/main/java/com/bintianqi/owndroid/MainActivity.kt index cd4c860..1cb458c 100644 --- a/app/src/main/java/com/bintianqi/owndroid/MainActivity.kt +++ b/app/src/main/java/com/bintianqi/owndroid/MainActivity.kt @@ -41,6 +41,7 @@ import com.bintianqi.owndroid.dpm.* import com.bintianqi.owndroid.ui.Animations import com.bintianqi.owndroid.ui.theme.OwnDroidTheme import kotlinx.coroutines.delay +import java.util.Locale var backToHome = false @ExperimentalMaterial3Api @@ -51,6 +52,8 @@ class MainActivity : ComponentActivity() { WindowCompat.setDecorFitsSystemWindows(window, false) super.onCreate(savedInstanceState) registerActivityResult(this) + val locale = applicationContext.resources.configuration.locale + zhCN = locale==Locale.SIMPLIFIED_CHINESE||locale==Locale.CHINESE||locale==Locale.CHINA val sharedPref = applicationContext.getSharedPreferences("data", Context.MODE_PRIVATE) setContent { val materialYou = mutableStateOf(sharedPref.getBoolean("material_you",true)) @@ -130,7 +133,7 @@ private fun HomePage(navCtrl:NavHostController, pkgName: MutableState){ else if(myDpm.isAdminActive(myComponent)){R.string.device_admin}else{R.string.click_to_activate} ) LaunchedEffect(Unit){ pkgName.value = "" } - Column(modifier = Modifier.statusBarsPadding().verticalScroll(rememberScrollState())) { + Column(modifier = Modifier.background(colorScheme.background).statusBarsPadding().verticalScroll(rememberScrollState())) { Spacer(Modifier.padding(vertical = 25.dp)) Text( text = stringResource(R.string.app_name), style = typography.headlineLarge, @@ -202,13 +205,11 @@ fun HomePageItem(name:Int, imgVector:Int, navTo:String, myNav:NavHostController) tint = colorScheme.onBackground ) Spacer(Modifier.padding(start = 15.dp)) - Column { - Text( - text = stringResource(name), - style = typography.headlineSmall, - color = colorScheme.onBackground, - modifier = Modifier.padding(bottom = 2.dp) - ) - } + Text( + text = stringResource(name), + style = typography.headlineSmall, + color = colorScheme.onBackground, + modifier = Modifier.padding(bottom = if(zhCN){2}else{0}.dp) + ) } } diff --git a/app/src/main/java/com/bintianqi/owndroid/Utils.kt b/app/src/main/java/com/bintianqi/owndroid/Utils.kt index 702e895..f8f6d27 100644 --- a/app/src/main/java/com/bintianqi/owndroid/Utils.kt +++ b/app/src/main/java/com/bintianqi/owndroid/Utils.kt @@ -7,7 +7,8 @@ import android.widget.Toast import androidx.activity.ComponentActivity import androidx.activity.result.ActivityResultLauncher import androidx.activity.result.contract.ActivityResultContracts -import com.bintianqi.owndroid.dpm.* +import com.bintianqi.owndroid.dpm.addDeviceAdmin +import com.bintianqi.owndroid.dpm.createManagedProfile import java.io.FileNotFoundException import java.io.IOException import java.io.InputStream @@ -15,6 +16,8 @@ import java.io.InputStream lateinit var getFile: ActivityResultLauncher var fileUri: Uri? = null +var zhCN = true + fun uriToStream( context: Context, uri: Uri?, diff --git a/app/src/main/java/com/bintianqi/owndroid/ui/Components.kt b/app/src/main/java/com/bintianqi/owndroid/ui/Components.kt index a84bf68..6579270 100644 --- a/app/src/main/java/com/bintianqi/owndroid/ui/Components.kt +++ b/app/src/main/java/com/bintianqi/owndroid/ui/Components.kt @@ -1,6 +1,5 @@ package com.bintianqi.owndroid.ui -import android.content.Context import android.widget.Toast import androidx.annotation.DrawableRes import androidx.annotation.StringRes @@ -24,6 +23,7 @@ import androidx.navigation.NavBackStackEntry import androidx.navigation.NavHostController import com.bintianqi.owndroid.R import com.bintianqi.owndroid.writeClipBoard +import com.bintianqi.owndroid.zhCN import kotlinx.coroutines.delay import kotlinx.coroutines.launch @@ -44,7 +44,7 @@ fun SubPageItem( Spacer(Modifier.padding(start = 15.dp)) } Column { - Text(text = stringResource(title), style = typography.titleLarge, modifier = Modifier.padding(bottom = 1.dp)) + Text(text = stringResource(title), style = typography.titleLarge, modifier = Modifier.padding(bottom = if(zhCN){2}else{0}.dp)) if(desc!=""){Text(text = desc, color = colorScheme.onBackground.copy(alpha = 0.8F))} } } @@ -82,17 +82,13 @@ fun RadioButtonItem( operation:()->Unit, textColor: Color = colorScheme.onBackground ){ - val sharedPref = LocalContext.current.getSharedPreferences("data", Context.MODE_PRIVATE) - val isWear = sharedPref.getBoolean("isWear",false) Row(verticalAlignment = Alignment.CenterVertically,modifier = Modifier .fillMaxWidth() - .padding(vertical = if(isWear){3.dp}else{0.dp}) .clip(RoundedCornerShape(25)) .clickable(onClick = operation) ) { - RadioButton(selected = selected(), onClick = operation,modifier=if(isWear){Modifier.size(28.dp)}else{Modifier}) - Text(text = text, style = if(!isWear){typography.bodyLarge}else{typography.bodyMedium}, color = textColor, - modifier = Modifier.padding(bottom = 2.dp)) + RadioButton(selected = selected(), onClick = operation) + Text(text = text, color = textColor, modifier = Modifier.padding(bottom = if(zhCN){2}else{0}.dp)) } } @@ -103,20 +99,16 @@ fun CheckBoxItem( operation:()->Unit, textColor:Color = colorScheme.onBackground ){ - val sharedPref = LocalContext.current.getSharedPreferences("data", Context.MODE_PRIVATE) - val isWear = sharedPref.getBoolean("isWear",false) Row(verticalAlignment = Alignment.CenterVertically,modifier = Modifier .fillMaxWidth() - .padding(vertical = if(isWear){3.dp}else{0.dp}) .clip(RoundedCornerShape(25)) .clickable(onClick = operation) ) { Checkbox( checked = checked(), - onCheckedChange = {operation()}, - modifier=if(isWear){Modifier.size(28.dp)}else{Modifier} + onCheckedChange = {operation()} ) - Text(text = text, style = if(!isWear){typography.bodyLarge}else{typography.bodyMedium}, color = textColor, modifier = Modifier.padding(bottom = 2.dp)) + Text(text = text, color = textColor, modifier = Modifier.padding(bottom = if(zhCN){2}else{0}.dp)) } } @@ -149,7 +141,10 @@ fun SwitchItem( } Column(modifier = Modifier.padding(end = 60.dp)){ Text(text = stringResource(title), style = typography.titleLarge) - if(desc!=""){Text(text = desc, color = colorScheme.onBackground.copy(alpha = 0.8F))}else{Spacer(Modifier.padding(vertical = 1.dp))} + if(desc!=""){ + Text(text = desc, color = colorScheme.onBackground.copy(alpha = 0.8F)) + } + if(zhCN){ Spacer(Modifier.padding(vertical = 1.dp)) } } } Switch(