From d0a539d6dcc967250697edf56cdfddb32dac5c48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=B3=B3=E6=B7=87?= <815099246@qq.com> Date: Tue, 2 Apr 2024 14:57:50 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D:AVNC=E5=8E=9F=E7=94=9F?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E4=B8=8EFlutter=E7=95=8C=E9=9D=A2=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F=E4=B8=8D=E7=AC=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.更新Android端material库为1.11.0 2.在Android端启用动态颜色 3.更改主题样式为Material3 4.为两个原生页面启用边倒边沉浸 5.修改Android端项目名称为TinyComputer(顺手改了, 默认为android) --- android/app/build.gradle | 2 +- android/app/src/main/AndroidManifest.xml | 2 +- .../com/example/tiny_computer/MainApplication.kt | 12 ++++++++++++ .../com/gaurav/avnc/ui/about/AboutActivity.kt | 10 ++++++++++ .../com/gaurav/avnc/ui/prefs/PrefsActivity.kt | 11 ++++++++++- .../app/src/main/res/layout/activity_about.xml | 1 + .../src/main/res/layout/activity_settings.xml | 1 + android/app/src/main/res/values/styles.xml | 16 ++++++++-------- android/settings.gradle | 1 + 9 files changed, 45 insertions(+), 11 deletions(-) create mode 100644 android/app/src/main/kotlin/com/example/tiny_computer/MainApplication.kt diff --git a/android/app/build.gradle b/android/app/build.gradle index 7f652a7..7576979 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -119,7 +119,7 @@ dependencies { kapt "androidx.room:room-compiler:$roomVersion" - implementation "com.google.android.material:material:1.7.0" + implementation "com.google.android.material:material:1.11.0" implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0" implementation "org.connectbot:sshlib:2.2.23" diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 64afa33..6457f86 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -8,7 +8,7 @@ diff --git a/android/app/src/main/kotlin/com/example/tiny_computer/MainApplication.kt b/android/app/src/main/kotlin/com/example/tiny_computer/MainApplication.kt new file mode 100644 index 0000000..36d0d7d --- /dev/null +++ b/android/app/src/main/kotlin/com/example/tiny_computer/MainApplication.kt @@ -0,0 +1,12 @@ +package com.example.tiny_computer + +import com.google.android.material.color.DynamicColors +import io.flutter.app.FlutterApplication + +class MainApplication : FlutterApplication() { + + override fun onCreate() { + super.onCreate() + DynamicColors.applyToActivitiesIfAvailable(this@MainApplication) + } +} \ No newline at end of file diff --git a/android/app/src/main/kotlin/com/gaurav/avnc/ui/about/AboutActivity.kt b/android/app/src/main/kotlin/com/gaurav/avnc/ui/about/AboutActivity.kt index e924f6d..af6835d 100644 --- a/android/app/src/main/kotlin/com/gaurav/avnc/ui/about/AboutActivity.kt +++ b/android/app/src/main/kotlin/com/gaurav/avnc/ui/about/AboutActivity.kt @@ -9,7 +9,10 @@ package com.gaurav.avnc.ui.about import android.os.Bundle +import androidx.activity.enableEdgeToEdge import androidx.appcompat.app.AppCompatActivity +import androidx.core.view.ViewCompat +import androidx.core.view.WindowInsetsCompat import com.example.tiny_computer.R /** @@ -23,12 +26,19 @@ class AboutActivity : AppCompatActivity() { } override fun onCreate(savedInstanceState: Bundle?) { + enableEdgeToEdge() super.onCreate(savedInstanceState) setContentView(R.layout.activity_about) setSupportActionBar(findViewById(R.id.toolbar)) supportActionBar?.setDisplayHomeAsUpEnabled(true) + ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.about_main)) { v, insets -> + val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()) + v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom) + insets + } + if (savedInstanceState == null) { supportFragmentManager.beginTransaction() .replace(R.id.fragment_host, AboutFragment()) diff --git a/android/app/src/main/kotlin/com/gaurav/avnc/ui/prefs/PrefsActivity.kt b/android/app/src/main/kotlin/com/gaurav/avnc/ui/prefs/PrefsActivity.kt index 4f9c4bb..ef330fc 100644 --- a/android/app/src/main/kotlin/com/gaurav/avnc/ui/prefs/PrefsActivity.kt +++ b/android/app/src/main/kotlin/com/gaurav/avnc/ui/prefs/PrefsActivity.kt @@ -12,9 +12,12 @@ import android.content.SharedPreferences.OnSharedPreferenceChangeListener import android.content.pm.PackageManager import android.os.Build import android.os.Bundle +import androidx.activity.enableEdgeToEdge import androidx.annotation.Keep import androidx.appcompat.app.AppCompatActivity import androidx.core.text.HtmlCompat +import androidx.core.view.ViewCompat +import androidx.core.view.WindowInsetsCompat import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat import androidx.preference.SwitchPreference @@ -26,10 +29,16 @@ class PrefsActivity : AppCompatActivity(), PreferenceFragmentCompat.OnPreference override fun onCreate(savedInstanceState: Bundle?) { DeviceAuthPrompt.applyFingerprintDialogFix(supportFragmentManager) - + enableEdgeToEdge() super.onCreate(savedInstanceState) setContentView(R.layout.activity_settings) + ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.settings_main)) { v, insets -> + val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()) + v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom) + insets + } + if (savedInstanceState == null) { supportFragmentManager .beginTransaction() diff --git a/android/app/src/main/res/layout/activity_about.xml b/android/app/src/main/res/layout/activity_about.xml index b8cc072..aadb608 100644 --- a/android/app/src/main/res/layout/activity_about.xml +++ b/android/app/src/main/res/layout/activity_about.xml @@ -6,6 +6,7 @@ ~ See COPYING.txt for more details. --> diff --git a/android/app/src/main/res/layout/activity_settings.xml b/android/app/src/main/res/layout/activity_settings.xml index 417f322..3d44164 100644 --- a/android/app/src/main/res/layout/activity_settings.xml +++ b/android/app/src/main/res/layout/activity_settings.xml @@ -7,6 +7,7 @@ --> diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml index 52d39cc..7868634 100644 --- a/android/app/src/main/res/values/styles.xml +++ b/android/app/src/main/res/values/styles.xml @@ -31,29 +31,29 @@ Note: Some custom ROMs don't respect/support the splash theme introduced in API 31. On such devices, we still rely on the above mentioned workaround. --> - - -