From 71fde9937c6c42de044fcf9a393185ced99899dd Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Sat, 27 Sep 2025 21:57:20 +0800
Subject: [PATCH 01/22] Update android.yml
---
.github/workflows/android.yml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml
index e0dee83d332..89c0c6c4a59 100644
--- a/.github/workflows/android.yml
+++ b/.github/workflows/android.yml
@@ -34,3 +34,6 @@ jobs:
with:
name: aaps
path: app/build/outputs/apk/full/release
+ - name: Show Gradle build logs
+ run: cat app/build/reports/build.log
+
From 7e8febfda1b7e2ed85a1605414dfe21392f53c6a Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Sat, 27 Sep 2025 22:15:18 +0800
Subject: [PATCH 02/22] Update android.yml
---
.github/workflows/android.yml | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml
index 89c0c6c4a59..83b91c93ccc 100644
--- a/.github/workflows/android.yml
+++ b/.github/workflows/android.yml
@@ -34,6 +34,5 @@ jobs:
with:
name: aaps
path: app/build/outputs/apk/full/release
- - name: Show Gradle build logs
- run: cat app/build/reports/build.log
+
From a5527e51db1c9490205424e6abbf9e7c6b6b2f9e Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Sun, 11 Jan 2026 08:37:51 +0800
Subject: [PATCH 03/22] Fix formatting in support section of README
Removed a blank line in the support section.
---
README.md | 1 -
1 file changed, 1 deletion(-)
diff --git a/README.md b/README.md
index e1c5be5c3c5..ccc679ee0e5 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,6 @@
软件遵循GPL V3协议,是完全开源免费的,但开发者写代码、维护需要投入大量时间精力。
大家的支持是项目得以延续的动力。
支持码农哥加的功能,请点击以下链接(Sponsor)或者扫码。
-
https://afdian.com/a/manong
From 38917e3d4113ec77dfbac74c6617b40ac54616cf Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Sun, 11 Jan 2026 22:39:26 +0800
Subject: [PATCH 04/22] Update README.md
---
README.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/README.md b/README.md
index ccc679ee0e5..e1c5be5c3c5 100644
--- a/README.md
+++ b/README.md
@@ -2,6 +2,7 @@
软件遵循GPL V3协议,是完全开源免费的,但开发者写代码、维护需要投入大量时间精力。
大家的支持是项目得以延续的动力。
支持码农哥加的功能,请点击以下链接(Sponsor)或者扫码。
+
https://afdian.com/a/manong
From 41ddb1628b0794d50980571ec1d3ee3ffb5854b0 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Mon, 12 Jan 2026 13:45:50 +0800
Subject: [PATCH 05/22] Update Versions.kt
---
buildSrc/src/main/kotlin/Versions.kt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt
index 1a244ae5ed1..1a5734cb2a5 100644
--- a/buildSrc/src/main/kotlin/Versions.kt
+++ b/buildSrc/src/main/kotlin/Versions.kt
@@ -8,8 +8,8 @@ object Versions {
const val versionCode = 1500
const val compileSdk = 36
- const val minSdk = 31
- const val targetSdk = 32
+ const val minSdk = 30
+ const val targetSdk = 30
const val wearMinSdk = 30
const val wearTargetSdk = 30
From 16e6b4abfbdf67c67414414a48c2392b5b4af5ce Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Mon, 12 Jan 2026 22:26:02 +0800
Subject: [PATCH 06/22] Update AndroidManifest.xml
---
app/src/main/AndroidManifest.xml | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index da29c11f5e5..23b8970b19b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -2,8 +2,14 @@
-
-
+
+
+
+
+
+
From dd3ecb783d945276b1b41fb410e514503d88c15b Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Mon, 12 Jan 2026 22:42:20 +0800
Subject: [PATCH 07/22] Update README.md
---
README.md | 1 -
1 file changed, 1 deletion(-)
diff --git a/README.md b/README.md
index e1c5be5c3c5..ccc679ee0e5 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,6 @@
软件遵循GPL V3协议,是完全开源免费的,但开发者写代码、维护需要投入大量时间精力。
大家的支持是项目得以延续的动力。
支持码农哥加的功能,请点击以下链接(Sponsor)或者扫码。
-
https://afdian.com/a/manong
From 87eecc26df2d83f2295b898ccaf12b743c515807 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Mon, 12 Jan 2026 22:56:23 +0800
Subject: [PATCH 08/22] Update AndroidManifest.xml
---
app/src/main/AndroidManifest.xml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 23b8970b19b..a8da526938b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -10,6 +10,10 @@
+
+
+
+
From 143cabda1e19c02b2d1ad0f8a0c3ddd33c903299 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Mon, 12 Jan 2026 23:01:21 +0800
Subject: [PATCH 09/22] Update build.gradle.kts
---
app/build.gradle.kts | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 34563b50f32..99cb93843f5 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -252,6 +252,12 @@ dependencies {
implementation(project(":pump:rileylink"))
implementation(project(":pump:virtual"))
implementation(project(":workflow"))
+ // 补充:动态权限申请核心依赖(安卓X Core KTX)
+ implementation(libs.androidx.core.ktx)
+ // 补充:Activity KTX(简化Activity中的权限申请流程)
+ implementation(libs.androidx.activity.ktx)
+ // 补充:AppCompat(兼容低版本安卓,提升权限申请弹窗兼容性)
+ implementation(libs.androidx.appcompat)
testImplementation(project(":shared:tests"))
androidTestImplementation(project(":shared:tests"))
From 032d87e93ae14ea0d56ee0824cda7cfaff0f7a90 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Mon, 12 Jan 2026 23:08:45 +0800
Subject: [PATCH 10/22] Update libs.versions.toml
---
gradle/libs.versions.toml | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 7a7711270c6..271f5810884 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -15,6 +15,10 @@ kotlinx-coroutines = "1.10.2"
work = "2.11.0"
datastorePreferences = "1.2.0"
annotation = "1.9.1"
+# 原有其他版本配置保留(如minSdk、targetSdk等)
+androidx-core = "1.12.0" # 对应core-ktx的版本
+androidx-activity = "1.8.0" # 对应activity-ktx的版本
+androidx-appcompat = "1.6.1" # 补充appcompat的版本(避免后续appcompat依赖报错)
# Compose
activityCompose = "1.12.2"
@@ -37,6 +41,14 @@ compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "
com-android-tools-build = { group = "com.android.tools.build", name = "gradle", version.ref = "gradlePlugin" }
com-google-gms = { group = "com.google.gms", name = "google-services", version.ref = "googleServices" }
+
+# 补充core-ktx依赖
+androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidx-core" }
+# 补充activity-ktx依赖
+androidx-activity-ktx = { module = "androidx.activity:activity-ktx", version.ref = "androidx-activity" }
+# 补充appcompat依赖(对应你之前添加的implementation(libs.androidx.appcompat))
+androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" }
+
com-google-dagger-compiler = { group = "com.google.dagger", name = "dagger-compiler", version.ref = "dagger" }
com-google-dagger-android = { group = "com.google.dagger", name = "dagger-android", version.ref = "dagger" }
com-google-dagger-android-processor = { group = "com.google.dagger", name = "dagger-android-processor", version.ref = "dagger" }
From 9babf8550019008e853ed9da0b7f8552606ac7db Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Mon, 12 Jan 2026 23:12:24 +0800
Subject: [PATCH 11/22] Update libs.versions.toml
---
gradle/libs.versions.toml | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 271f5810884..eb6c45b3b30 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -46,8 +46,7 @@ com-google-gms = { group = "com.google.gms", name = "google-services", version.r
androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidx-core" }
# 补充activity-ktx依赖
androidx-activity-ktx = { module = "androidx.activity:activity-ktx", version.ref = "androidx-activity" }
-# 补充appcompat依赖(对应你之前添加的implementation(libs.androidx.appcompat))
-androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" }
+
com-google-dagger-compiler = { group = "com.google.dagger", name = "dagger-compiler", version.ref = "dagger" }
com-google-dagger-android = { group = "com.google.dagger", name = "dagger-android", version.ref = "dagger" }
From 803053e1be783236082e2c4f7b141f0aa4dd7f69 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Tue, 13 Jan 2026 12:02:15 +0800
Subject: [PATCH 12/22] Update AndroidManifest.xml
---
app/src/main/AndroidManifest.xml | 8 --------
1 file changed, 8 deletions(-)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index a8da526938b..06ebca71059 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -6,14 +6,6 @@
android:minSdkVersion="31" />
-
-
-
-
-
-
-
-
From 6b9e3fb97b5aeb46615940e181b9aadc38f17667 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Tue, 13 Jan 2026 12:03:37 +0800
Subject: [PATCH 13/22] Update build.gradle.kts
---
app/build.gradle.kts | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 99cb93843f5..fc7e7377267 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -252,12 +252,7 @@ dependencies {
implementation(project(":pump:rileylink"))
implementation(project(":pump:virtual"))
implementation(project(":workflow"))
- // 补充:动态权限申请核心依赖(安卓X Core KTX)
- implementation(libs.androidx.core.ktx)
- // 补充:Activity KTX(简化Activity中的权限申请流程)
- implementation(libs.androidx.activity.ktx)
- // 补充:AppCompat(兼容低版本安卓,提升权限申请弹窗兼容性)
- implementation(libs.androidx.appcompat)
+
testImplementation(project(":shared:tests"))
androidTestImplementation(project(":shared:tests"))
From b9d088720e8f52584350641906442d63916f9673 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Tue, 13 Jan 2026 12:27:28 +0800
Subject: [PATCH 14/22] Update libs.versions.toml
---
gradle/libs.versions.toml | 8 --------
1 file changed, 8 deletions(-)
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index eb6c45b3b30..bc60ebd0052 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -15,10 +15,6 @@ kotlinx-coroutines = "1.10.2"
work = "2.11.0"
datastorePreferences = "1.2.0"
annotation = "1.9.1"
-# 原有其他版本配置保留(如minSdk、targetSdk等)
-androidx-core = "1.12.0" # 对应core-ktx的版本
-androidx-activity = "1.8.0" # 对应activity-ktx的版本
-androidx-appcompat = "1.6.1" # 补充appcompat的版本(避免后续appcompat依赖报错)
# Compose
activityCompose = "1.12.2"
@@ -42,10 +38,6 @@ com-android-tools-build = { group = "com.android.tools.build", name = "gradle",
com-google-gms = { group = "com.google.gms", name = "google-services", version.ref = "googleServices" }
-# 补充core-ktx依赖
-androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidx-core" }
-# 补充activity-ktx依赖
-androidx-activity-ktx = { module = "androidx.activity:activity-ktx", version.ref = "androidx-activity" }
com-google-dagger-compiler = { group = "com.google.dagger", name = "dagger-compiler", version.ref = "dagger" }
From 57e50406854f624694cd32d99a12a7aa7451f908 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Tue, 13 Jan 2026 12:29:05 +0800
Subject: [PATCH 15/22] Update AndroidManifest.xml
---
app/src/main/AndroidManifest.xml | 2 --
1 file changed, 2 deletions(-)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 06ebca71059..163697551be 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -3,9 +3,7 @@
From e0b3ac814cc491e315d3248bffbca89a4661a5d9 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Tue, 13 Jan 2026 12:30:27 +0800
Subject: [PATCH 16/22] Remove empty line in build.gradle.kts
---
app/build.gradle.kts | 1 -
1 file changed, 1 deletion(-)
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index fc7e7377267..34563b50f32 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -253,7 +253,6 @@ dependencies {
implementation(project(":pump:virtual"))
implementation(project(":workflow"))
-
testImplementation(project(":shared:tests"))
androidTestImplementation(project(":shared:tests"))
androidTestImplementation(libs.androidx.test.rules)
From 631fce81abb042cef683bea6b02c78ddf769c5f7 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Tue, 13 Jan 2026 12:31:22 +0800
Subject: [PATCH 17/22] Update AndroidManifest.xml
---
app/src/main/AndroidManifest.xml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 163697551be..6f420754bdb 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -2,8 +2,8 @@
-
+
From 86873b2720eb83cda5a2470de3af791f2308c169 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Tue, 13 Jan 2026 12:31:50 +0800
Subject: [PATCH 18/22] Update libs.versions.toml
---
gradle/libs.versions.toml | 3 ---
1 file changed, 3 deletions(-)
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index bc60ebd0052..7a7711270c6 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -37,9 +37,6 @@ compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "
com-android-tools-build = { group = "com.android.tools.build", name = "gradle", version.ref = "gradlePlugin" }
com-google-gms = { group = "com.google.gms", name = "google-services", version.ref = "googleServices" }
-
-
-
com-google-dagger-compiler = { group = "com.google.dagger", name = "dagger-compiler", version.ref = "dagger" }
com-google-dagger-android = { group = "com.google.dagger", name = "dagger-android", version.ref = "dagger" }
com-google-dagger-android-processor = { group = "com.google.dagger", name = "dagger-android-processor", version.ref = "dagger" }
From 6a36888940fb0e38aed8c72c786d7edacb284572 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Tue, 13 Jan 2026 12:32:29 +0800
Subject: [PATCH 19/22] Update AndroidManifest.xml
---
app/src/main/AndroidManifest.xml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 6f420754bdb..da29c11f5e5 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -2,8 +2,8 @@
-
-
+
+
From f45dce69fcf21701495b91aaec8b0b3fb213edd2 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Tue, 13 Jan 2026 12:33:24 +0800
Subject: [PATCH 20/22] Update android.yml
---
.github/workflows/android.yml | 2 --
1 file changed, 2 deletions(-)
diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml
index 26424b53895..0a08e89cc54 100644
--- a/.github/workflows/android.yml
+++ b/.github/workflows/android.yml
@@ -40,5 +40,3 @@ jobs:
with:
name: aaps
path: app/build/outputs/apk/full/release
-
-
From d566b5dbd9c105b4cf5c533aaebce88e7e6c27b3 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Sun, 18 Jan 2026 20:16:49 +0800
Subject: [PATCH 21/22] Update AndroidManifest.xml with Bluetooth permissions
Added Bluetooth permissions for Android 11 and 12.
---
app/src/main/AndroidManifest.xml | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index da29c11f5e5..3725ad678a5 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,9 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
From 3bfecd70425d30b76c8d27f0358603a314c78eb3 Mon Sep 17 00:00:00 2001
From: njit2002 <88644262+njit2002@users.noreply.github.com>
Date: Sun, 18 Jan 2026 20:57:40 +0800
Subject: [PATCH 22/22] 1
---
.../configuration/AndroidPermissionImpl.kt | 51 ++++++++++++++-----
1 file changed, 38 insertions(+), 13 deletions(-)
diff --git a/plugins/configuration/src/main/kotlin/app/aaps/plugins/configuration/AndroidPermissionImpl.kt b/plugins/configuration/src/main/kotlin/app/aaps/plugins/configuration/AndroidPermissionImpl.kt
index 5764cca0f1e..bfac4ea9905 100644
--- a/plugins/configuration/src/main/kotlin/app/aaps/plugins/configuration/AndroidPermissionImpl.kt
+++ b/plugins/configuration/src/main/kotlin/app/aaps/plugins/configuration/AndroidPermissionImpl.kt
@@ -7,6 +7,7 @@ import android.content.ActivityNotFoundException
import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
+import android.os.Build
import android.os.PowerManager
import android.provider.Settings
import androidx.core.content.ContextCompat
@@ -84,6 +85,20 @@ class AndroidPermissionImpl @Inject constructor(
return !selfCheck
}
+ /**
+ * 新增方法:统一判断蓝牙权限,兼容 Android 11 / 12+
+ */
+ private fun hasBluetoothPermission(context: Context): Boolean {
+ return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
+ !permissionNotGranted(context, Manifest.permission.BLUETOOTH_CONNECT) &&
+ !permissionNotGranted(context, Manifest.permission.BLUETOOTH_SCAN)
+ } else {
+ !permissionNotGranted(context, Manifest.permission.BLUETOOTH) &&
+ !permissionNotGranted(context, Manifest.permission.BLUETOOTH_ADMIN) &&
+ !permissionNotGranted(context, Manifest.permission.ACCESS_FINE_LOCATION)
+ }
+ }
+
@Synchronized
override fun notifyForSMSPermissions(activity: FragmentActivity) {
if (permissionNotGranted(activity, Manifest.permission.RECEIVE_SMS))
@@ -106,21 +121,31 @@ class AndroidPermissionImpl @Inject constructor(
@SuppressLint("MissingPermission")
@Synchronized
override fun notifyForBtConnectPermission(activity: FragmentActivity) {
- if (activePlugin.activePump !is VirtualPump)
- // Manifest.permission.BLUETOOTH_CONNECT
- if (permissionNotGranted(activity, Manifest.permission.BLUETOOTH_CONNECT) || permissionNotGranted(activity, Manifest.permission.BLUETOOTH_SCAN))
+ if (activePlugin.activePump !is VirtualPump) {
+ if (!hasBluetoothPermission(activity)) {
uiInteraction.addNotification(
id = Notification.PERMISSION_BT,
text = rh.gs(app.aaps.core.ui.R.string.need_connect_permission),
level = Notification.URGENT,
actionButtonId = R.string.request,
- action = { askForPermission(activity, arrayOf(Manifest.permission.BLUETOOTH_SCAN, Manifest.permission.BLUETOOTH_CONNECT)) },
- validityCheck = { permissionNotGranted(activity, Manifest.permission.BLUETOOTH_CONNECT) || permissionNotGranted(activity, Manifest.permission.BLUETOOTH_SCAN) }
+ action = {
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
+ askForPermission(activity, arrayOf(Manifest.permission.BLUETOOTH_SCAN, Manifest.permission.BLUETOOTH_CONNECT))
+ } else {
+ askForPermission(activity, arrayOf(
+ Manifest.permission.BLUETOOTH,
+ Manifest.permission.BLUETOOTH_ADMIN,
+ Manifest.permission.ACCESS_FINE_LOCATION
+ ))
+ }
+ },
+ validityCheck = { !hasBluetoothPermission(activity) }
)
- else {
+ } else {
activity.startActivity(Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE))
uiInteraction.dismissNotification(Notification.PERMISSION_BT)
}
+ }
}
@Synchronized
@@ -137,7 +162,8 @@ class AndroidPermissionImpl @Inject constructor(
else uiInteraction.dismissNotification(Notification.PERMISSION_BATTERY)
}
- @Synchronized override fun notifyForStoragePermission(activity: FragmentActivity) {
+ @Synchronized
+ override fun notifyForStoragePermission(activity: FragmentActivity) {
if (permissionNotGranted(activity, Manifest.permission.READ_EXTERNAL_STORAGE))
uiInteraction.addNotification(
id = Notification.PERMISSION_STORAGE,
@@ -150,7 +176,8 @@ class AndroidPermissionImpl @Inject constructor(
else uiInteraction.dismissNotification(Notification.PERMISSION_STORAGE)
}
- @Synchronized override fun notifyForLocationPermissions(activity: FragmentActivity) {
+ @Synchronized
+ override fun notifyForLocationPermissions(activity: FragmentActivity) {
if (permissionNotGranted(activity, Manifest.permission.ACCESS_FINE_LOCATION) ||
permissionNotGranted(activity, Manifest.permission.ACCESS_COARSE_LOCATION)
) {
@@ -174,8 +201,8 @@ class AndroidPermissionImpl @Inject constructor(
} else uiInteraction.dismissNotification(Notification.PERMISSION_LOCATION)
}
- @Synchronized override fun notifyForSystemWindowPermissions(activity: FragmentActivity) {
- // Check if Android Q or higher
+ @Synchronized
+ override fun notifyForSystemWindowPermissions(activity: FragmentActivity) {
if (!Settings.canDrawOverlays(activity))
uiInteraction.addNotification(
id = Notification.PERMISSION_SYSTEM_WINDOW,
@@ -183,8 +210,6 @@ class AndroidPermissionImpl @Inject constructor(
level = Notification.URGENT,
actionButtonId = R.string.request,
action = {
- // Show alert dialog to the user saying a separate permission is needed
- // Launch the settings activity if the user prefers
val intent = Intent(
Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
("package:" + activity.packageName).toUri()
@@ -195,4 +220,4 @@ class AndroidPermissionImpl @Inject constructor(
)
else uiInteraction.dismissNotification(Notification.PERMISSION_SYSTEM_WINDOW)
}
-}
\ No newline at end of file
+}