From e01fcd9860f5e80ed08b14ef707bfff8a83624ff Mon Sep 17 00:00:00 2001
From: QiuSW <105186638@qq.com>
Date: Mon, 14 Sep 2026 16:03:21 +0800
Subject: [PATCH] feat: request media permission for image search (#276)
---
android/app/src/main/AndroidManifest.xml | 2 ++
.../main/java/cn/ilapage/goauto/agent/MainActivity.kt | 10 ++++++++++
2 files changed, 12 insertions(+)
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 5fbcba4..d9d19f8 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -7,6 +7,8 @@
+
+
diff --git a/android/app/src/main/java/cn/ilapage/goauto/agent/MainActivity.kt b/android/app/src/main/java/cn/ilapage/goauto/agent/MainActivity.kt
index 2c441ce..552bd82 100644
--- a/android/app/src/main/java/cn/ilapage/goauto/agent/MainActivity.kt
+++ b/android/app/src/main/java/cn/ilapage/goauto/agent/MainActivity.kt
@@ -38,6 +38,7 @@ class MainActivity : AppCompatActivity() {
)
setContentView(buildContent())
requestNotificationPermission()
+ requestMediaPermission()
if (AgentSettingsStore(this).serverUrl().isNotBlank()) AgentForegroundService.start(this)
AgentAppUpdateManager.checkOnceAtStartup(this)
}
@@ -127,6 +128,14 @@ class MainActivity : AppCompatActivity() {
}
}
+ private fun requestMediaPermission() {
+ val permission = if (Build.VERSION.SDK_INT >= 33) Manifest.permission.READ_MEDIA_IMAGES
+ else Manifest.permission.READ_EXTERNAL_STORAGE
+ if (checkSelfPermission(permission) != PackageManager.PERMISSION_GRANTED) {
+ requestPermissions(arrayOf(permission), MEDIA_PERMISSION_REQUEST)
+ }
+ }
+
private fun applyScreenPolicy() {
val keepScreenOn = cn.ilapage.goauto.agent.service.AgentStateStore(this).read().keepScreenOn
if (keepScreenOn) {
@@ -145,5 +154,6 @@ class MainActivity : AppCompatActivity() {
private const val TAB_PREFERENCES = "goauto_agent_ui"
private const val LAST_SELECTED_TAB = "last_selected_tab"
private const val STATE_SELECTED_TAB = "selected_tab"
+ private const val MEDIA_PERMISSION_REQUEST = 101
}
}