修改媒体权限逻辑:创建checkshot文件夹,只读取该文件夹中的图片
- 修改GalleryScreen.kt中的loadImagesFromGallery函数,添加WHERE条件只读取checkshot文件夹中的图片 - 修改MergeScreen.kt中的getLatestImages函数,添加WHERE条件只读取checkshot文件夹中的图片 - 修改ImageProcessor.kt中的saveToGallery函数,将图片保存到checkshot文件夹(之前是InspectionCamera)
This commit is contained in:
@@ -274,11 +274,15 @@ private suspend fun loadImagesFromGallery(context: android.content.Context): Lis
|
||||
val projection = arrayOf(MediaStore.Images.Media._ID)
|
||||
val sortOrder = "${MediaStore.Images.Media.DATE_ADDED} DESC"
|
||||
|
||||
// 只读取checkshot文件夹中的图片
|
||||
val selection = "${MediaStore.Images.Media.RELATIVE_PATH} LIKE ?"
|
||||
val selectionArgs = arrayOf("%/checkshot/%")
|
||||
|
||||
context.contentResolver.query(
|
||||
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
|
||||
projection,
|
||||
null,
|
||||
null,
|
||||
selection,
|
||||
selectionArgs,
|
||||
sortOrder
|
||||
)?.use { cursor ->
|
||||
val idColumn = cursor.getColumnIndexOrThrow(MediaStore.Images.Media._ID)
|
||||
|
||||
@@ -138,11 +138,15 @@ fun MergeScreen(
|
||||
val projection = arrayOf(MediaStore.Images.Media._ID)
|
||||
val sortOrder = "${MediaStore.Images.Media.DATE_ADDED} DESC"
|
||||
|
||||
// 只读取checkshot文件夹中的图片
|
||||
val selection = "${MediaStore.Images.Media.RELATIVE_PATH} LIKE ?"
|
||||
val selectionArgs = arrayOf("%/checkshot/%")
|
||||
|
||||
context.contentResolver.query(
|
||||
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
|
||||
projection,
|
||||
null,
|
||||
null,
|
||||
selection,
|
||||
selectionArgs,
|
||||
sortOrder
|
||||
)?.use { cursor ->
|
||||
val idColumn = cursor.getColumnIndexOrThrow(MediaStore.Images.Media._ID)
|
||||
|
||||
@@ -545,7 +545,7 @@ object ImageProcessor {
|
||||
put(MediaStore.Images.Media.DISPLAY_NAME, fileName)
|
||||
put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg")
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
|
||||
put(MediaStore.Images.Media.RELATIVE_PATH, Environment.DIRECTORY_PICTURES + "/InspectionCamera")
|
||||
put(MediaStore.Images.Media.RELATIVE_PATH, Environment.DIRECTORY_PICTURES + "/checkshot")
|
||||
put(MediaStore.Images.Media.IS_PENDING, 1)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user