Skip to content

Commit 6ee8940

Browse files
committed
TIRAMISU
1 parent b2a360d commit 6ee8940

20 files changed

Lines changed: 100 additions & 55 deletions

File tree

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
@file:Suppress("MemberVisibilityCanBePrivate")
22

33
object Plugin {
4-
const val androidVersion = "7.4.0"
5-
const val kotlinVersion = "1.7.20"
4+
const val androidVersion = "8.0.2"
5+
const val kotlinVersion = "1.8.20"
66
const val application = "com.android.application"
77
const val library = "com.android.library"
88
const val kotlin_android = "android"
@@ -26,25 +26,19 @@ object Args {
2626
object Dep {
2727
const val kotlin = "org.jetbrains.kotlin:kotlin-stdlib:${Plugin.kotlinVersion}"
2828

29-
const val compat = "com.github.7449.Album:compat:v1.1.1"
30-
const val core = "com.github.7449.Album:core:v1.1.1"
31-
const val scan = "com.github.7449.Album:scan:v1.1.1"
32-
const val material_ui = "com.github.7449.Album:material:v1.1.1"
33-
const val wechat_ui = "com.github.7449.Album:wechat:v1.1.1"
34-
35-
const val appcompat = "androidx.appcompat:appcompat:1.6.0"
36-
const val fragment = "androidx.fragment:fragment:1.5.5"
37-
const val activity = "androidx.activity:activity-ktx:1.6.1"
38-
const val recyclerView = "androidx.recyclerview:recyclerview:1.2.1"
39-
const val viewPager2 = "androidx.viewpager2:viewpager2:1.1.0-beta01"
40-
const val material = "com.google.android.material:material:1.8.0"
29+
const val appcompat = "androidx.appcompat:appcompat:1.6.1"
30+
const val activity = "androidx.activity:activity-ktx:1.7.2"
31+
const val fragment = "androidx.fragment:fragment:1.6.0"
32+
const val recyclerView = "androidx.recyclerview:recyclerview:1.3.0"
33+
const val viewPager2 = "androidx.viewpager2:viewpager2:1.1.0-beta02"
34+
const val material = "com.google.android.material:material:1.9.0"
4135

4236
const val cameraview = "com.otaliastudios:cameraview:2.7.2"
4337
const val cropper = "com.theartofdev.edmodo:android-image-cropper:2.8.0"
44-
const val glide = "com.github.bumptech.glide:glide:4.14.2"
38+
const val glide = "com.github.bumptech.glide:glide:4.15.1"
4539

4640
const val color = "com.github.QuadFlask:colorpicker:0.0.15"
4741
const val flex = "com.google.android.flexbox:flexbox:3.0.0"
4842
const val banner = "com.github.7449.BannerLayout:banner:v2.0.3"
49-
const val ucrop = "com.github.yalantis:ucrop:2.2.6"
43+
const val ucrop = "com.github.yalantis:ucrop:2.2.8"
5044
}

compat/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ android {
1212
}
1313
compileOptions {
1414
kotlinOptions.freeCompilerArgs += listOf(Args.moduleName, Args.prefix.plus(project.name))
15+
sourceCompatibility = JavaVersion.VERSION_17
16+
targetCompatibility = JavaVersion.VERSION_17
17+
}
18+
kotlin {
19+
jvmToolchain(17)
1520
}
1621
}
1722
dependencies {

core/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ android {
1212
}
1313
compileOptions {
1414
kotlinOptions.freeCompilerArgs += listOf(Args.moduleName, Args.prefix.plus(project.name))
15+
sourceCompatibility = JavaVersion.VERSION_17
16+
targetCompatibility = JavaVersion.VERSION_17
17+
}
18+
kotlin {
19+
jvmToolchain(17)
1520
}
1621
}
1722
dependencies {

core/src/main/AndroidManifest.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
44
<uses-permission android:name="android.permission.CAMERA" />
5+
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
6+
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
7+
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
58

69
<queries>
710
<intent>
@@ -14,4 +17,5 @@
1417
<action android:name="android.media.action.IMAGE_CAPTURE_SECURE" />
1518
</intent>
1619
</queries>
20+
1721
</manifest>

core/src/main/java/develop/file/gallery/delegate/impl/ScanDelegateImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ import develop.file.gallery.extensions.ContextCompat.openVideo
3333
import develop.file.gallery.extensions.ContextCompat.takePictureUri
3434
import develop.file.gallery.extensions.FileCompat.scanFile
3535
import develop.file.gallery.extensions.PermissionCompat.checkPermissionAndRequestCamera
36-
import develop.file.gallery.extensions.PermissionCompat.checkPermissionAndRequestWrite
36+
import develop.file.gallery.extensions.PermissionCompat.checkPermissionAndRequestRead
3737
import develop.file.gallery.extensions.ResultCompat.orEmpty
3838
import develop.file.gallery.extensions.ResultCompat.toScanEntity
3939
import develop.file.gallery.extensions.UriCompat.delete
@@ -254,7 +254,7 @@ class ScanDelegateImpl(
254254
}
255255

256256
override fun onScanGallery(parent: Long, isCamera: Boolean) {
257-
if (!fragment.checkPermissionAndRequestWrite(readPermissionLauncher)) {
257+
if (!fragment.checkPermissionAndRequestRead(readPermissionLauncher)) {
258258
return
259259
}
260260
this.parentId = parent

core/src/main/java/develop/file/gallery/extensions/PermissionCompat.kt

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,28 @@ package develop.file.gallery.extensions
33
import android.Manifest
44
import android.content.Context
55
import android.content.pm.PackageManager
6+
import android.os.Build
67
import androidx.activity.result.ActivityResultLauncher
8+
import androidx.annotation.RequiresApi
79
import androidx.core.content.ContextCompat
810
import androidx.fragment.app.Fragment
911

1012
internal object PermissionCompat {
1113

12-
internal fun Fragment.checkPermissionAndRequestWrite(launcher: ActivityResultLauncher<String>): Boolean {
14+
@RequiresApi(Build.VERSION_CODES.TIRAMISU)
15+
internal fun Fragment.checkPermissionAndRequestMediaImages(launcher: ActivityResultLauncher<String>): Boolean {
16+
return if (!checkMediaImagesPermission()) {
17+
launcher.launch(Manifest.permission.READ_MEDIA_IMAGES)
18+
false
19+
} else {
20+
true
21+
}
22+
}
23+
24+
internal fun Fragment.checkPermissionAndRequestRead(launcher: ActivityResultLauncher<String>): Boolean {
25+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
26+
return checkPermissionAndRequestMediaImages(launcher)
27+
}
1328
return if (!checkReadPermission()) {
1429
launcher.launch(Manifest.permission.READ_EXTERNAL_STORAGE)
1530
false
@@ -33,6 +48,10 @@ internal object PermissionCompat {
3348
private fun Fragment.checkReadPermission() =
3449
requireContext().checkSelfPermissions(Manifest.permission.READ_EXTERNAL_STORAGE)
3550

51+
@RequiresApi(Build.VERSION_CODES.TIRAMISU)
52+
private fun Fragment.checkMediaImagesPermission() =
53+
requireContext().checkSelfPermissions(Manifest.permission.READ_MEDIA_IMAGES)
54+
3655
private fun Context.checkSelfPermissions(name: String) =
3756
ContextCompat.checkSelfPermission(this, name) == PackageManager.PERMISSION_GRANTED
3857

gradle.properties

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
11
android.useAndroidX=true
2-
android.enableJetifier=true
3-
android.disableAutomaticComponentCreation=true
2+
android.enableJetifier=true
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#Tue Nov 22 17:13:45 CST 2022
22
distributionBase=GRADLE_USER_HOME
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
44
distributionPath=wrapper/dists
55
zipStorePath=wrapper/dists
66
zipStoreBase=GRADLE_USER_HOME

material/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,11 @@ android {
1313
viewBinding { enable = true }
1414
compileOptions {
1515
kotlinOptions.freeCompilerArgs += listOf(Args.moduleName, Args.prefix.plus(project.name))
16+
sourceCompatibility = JavaVersion.VERSION_17
17+
targetCompatibility = JavaVersion.VERSION_17
18+
}
19+
kotlin {
20+
jvmToolchain(17)
1621
}
1722
}
1823
dependencies {

media/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ android {
1212
}
1313
compileOptions {
1414
kotlinOptions.freeCompilerArgs += listOf(Args.moduleName, Args.prefix.plus(project.name))
15+
sourceCompatibility = JavaVersion.VERSION_17
16+
targetCompatibility = JavaVersion.VERSION_17
17+
}
18+
kotlin {
19+
jvmToolchain(17)
1520
}
1621
}
1722
dependencies {

0 commit comments

Comments
 (0)