From 741b5cc0f9c282a8ad0efe41f0b26d12de34e8e5 Mon Sep 17 00:00:00 2001 From: vkamn Date: Tue, 4 Nov 2025 11:43:36 +0800 Subject: [PATCH] fix: qt6 9 support (#1973) * Fix qt 6.9 support * add support android sdk 36 * feat: add support SafeMargins from Android * Fix black screen --------- Co-authored-by: NickVs2015 --- .github/workflows/deploy.yml | 4 +- client/android/AndroidManifest.xml | 1 + client/android/res/values/styles.xml | 3 + .../src/org/amnezia/vpn/AmneziaActivity.kt | 88 ++++++++++++++++++- .../src/org/amnezia/vpn/AppListProvider.kt | 8 +- client/cmake/android.cmake | 6 +- .../platforms/android/android_controller.cpp | 15 ++++ client/platforms/android/android_controller.h | 3 + client/resources.qrc | 1 - client/ui/controllers/settingsController.cpp | 57 ++++++++++++ client/ui/controllers/settingsController.h | 10 +++ client/ui/qml/Components/QuestionDrawer.qml | 2 +- client/ui/qml/Controls2/PopupType.qml | 2 +- client/ui/qml/Pages2/PageHome.qml | 2 +- .../ui/qml/Pages2/PageProtocolAwgSettings.qml | 2 +- .../qml/Pages2/PageProtocolCloakSettings.qml | 2 +- .../Pages2/PageProtocolOpenVpnSettings.qml | 2 +- client/ui/qml/Pages2/PageProtocolRaw.qml | 2 +- .../PageProtocolShadowSocksSettings.qml | 2 +- .../PageProtocolWireGuardClientSettings.qml | 2 +- .../Pages2/PageProtocolWireGuardSettings.qml | 2 +- .../qml/Pages2/PageProtocolXraySettings.qml | 2 +- .../ui/qml/Pages2/PageServiceDnsSettings.qml | 2 +- .../ui/qml/Pages2/PageServiceSftpSettings.qml | 2 +- .../Pages2/PageServiceSocksProxySettings.qml | 2 +- .../Pages2/PageServiceTorWebsiteSettings.qml | 2 +- client/ui/qml/Pages2/PageSettings.qml | 2 +- client/ui/qml/Pages2/PageSettingsAbout.qml | 2 +- .../ui/qml/Pages2/PageSettingsApiDevices.qml | 2 +- .../Pages2/PageSettingsApiInstructions.qml | 2 +- .../Pages2/PageSettingsApiNativeConfigs.qml | 2 +- .../qml/Pages2/PageSettingsApiServerInfo.qml | 2 +- .../ui/qml/Pages2/PageSettingsApiSupport.qml | 2 +- .../Pages2/PageSettingsAppSplitTunneling.qml | 6 +- .../ui/qml/Pages2/PageSettingsApplication.qml | 2 +- client/ui/qml/Pages2/PageSettingsBackup.qml | 2 +- .../ui/qml/Pages2/PageSettingsConnection.qml | 2 +- client/ui/qml/Pages2/PageSettingsDns.qml | 2 +- .../ui/qml/Pages2/PageSettingsKillSwitch.qml | 2 +- .../PageSettingsKillSwitchExceptions.qml | 2 +- client/ui/qml/Pages2/PageSettingsLogging.qml | 2 +- .../ui/qml/Pages2/PageSettingsNewsDetail.qml | 2 +- .../Pages2/PageSettingsNewsNotifications.qml | 2 +- .../ui/qml/Pages2/PageSettingsServerInfo.qml | 2 +- .../qml/Pages2/PageSettingsServerProtocol.qml | 2 +- .../ui/qml/Pages2/PageSettingsServersList.qml | 2 +- .../qml/Pages2/PageSettingsSplitTunneling.qml | 2 +- .../Pages2/PageSetupWizardApiServiceInfo.qml | 2 +- .../Pages2/PageSetupWizardApiServicesList.qml | 2 +- .../Pages2/PageSetupWizardConfigSource.qml | 2 +- .../qml/Pages2/PageSetupWizardCredentials.qml | 2 +- client/ui/qml/Pages2/PageSetupWizardEasy.qml | 2 +- .../PageSetupWizardProtocolSettings.qml | 2 +- .../qml/Pages2/PageSetupWizardProtocols.qml | 2 +- .../ui/qml/Pages2/PageSetupWizardTextKey.qml | 2 +- .../qml/Pages2/PageSetupWizardViewConfig.qml | 2 +- client/ui/qml/Pages2/PageShare.qml | 2 +- client/ui/qml/Pages2/PageShareConnection.qml | 4 +- client/ui/qml/Pages2/PageShareFullAccess.qml | 2 +- client/ui/qml/Pages2/PageStart.qml | 2 +- client/ui/qml/main2.qml | 23 ++++- 61 files changed, 255 insertions(+), 68 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 3975e7109..1384eae42 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -469,8 +469,8 @@ jobs: runs-on: ubuntu-latest env: - ANDROID_BUILD_PLATFORM: android-34 - QT_VERSION: 6.7.3 + ANDROID_BUILD_PLATFORM: android-36 + QT_VERSION: 6.9.3 QT_MODULES: 'qtremoteobjects qt5compat qtimageformats qtshadertools' PROD_AGW_PUBLIC_KEY: ${{ secrets.PROD_AGW_PUBLIC_KEY }} PROD_S3_ENDPOINT: ${{ secrets.PROD_S3_ENDPOINT }} diff --git a/client/android/AndroidManifest.xml b/client/android/AndroidManifest.xml index b28f754b2..04001f63d 100644 --- a/client/android/AndroidManifest.xml +++ b/client/android/AndroidManifest.xml @@ -46,6 +46,7 @@ |fontScale|layoutDirection|locale|keyboard|keyboardHidden|navigation|mcc|mnc" android:launchMode="singleInstance" android:windowSoftInputMode="stateUnchanged|adjustResize" + android:enableOnBackInvokedCallback="false" android:exported="true"> diff --git a/client/android/res/values/styles.xml b/client/android/res/values/styles.xml index bc67beb98..f11a3796a 100644 --- a/client/android/res/values/styles.xml +++ b/client/android/res/values/styles.xml @@ -6,6 +6,9 @@ @color/black false true + shortEdges + false + false