Browse Source

2024-09-11 修改

修改:
1. 更新项目依赖,适配Android15 app获得性能提升
zhaiy 6 months ago
parent
commit
209fa42502

+ 10 - 0
.idea/deploymentTargetSelector.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="deploymentTargetSelector">
+    <selectionStates>
+      <SelectionState runConfigName="app">
+        <option name="selectionMode" value="DROPDOWN" />
+      </SelectionState>
+    </selectionStates>
+  </component>
+</project>

+ 1 - 0
.idea/gradle.xml

@@ -10,6 +10,7 @@
           <set>
             <option value="$PROJECT_DIR$" />
             <option value="$PROJECT_DIR$/MPChartLib" />
+            <option value="$PROJECT_DIR$/Matisse-master" />
             <option value="$PROJECT_DIR$/app" />
           </set>
         </option>

+ 1 - 1
.idea/kotlinc.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="KotlinJpsPluginSettings">
-    <option name="version" value="1.8.0" />
+    <option name="version" value="1.9.0" />
   </component>
 </project>

+ 8 - 6
MPChartLib/build.gradle

@@ -3,10 +3,12 @@ apply plugin: 'com.android.library'
 group='com.github.philjay'
 
 android {
-    compileSdk 33
+    namespace 'com.github.mikephil.charting'
+    compileSdk 34
+
     defaultConfig {
         minSdk 24
-        targetSdk 33
+        targetSdk 34
         versionCode 3
         versionName '3.1.0'
     }
@@ -22,13 +24,13 @@ android {
 }
 
 dependencies {
-    implementation 'androidx.annotation:annotation:1.0.0'
-    implementation 'junit:junit:4.12'
+    implementation 'androidx.annotation:annotation:1.7.0'
+    implementation 'junit:junit:4.13.2'
 }
 
 tasks.register('sourcesJar', Jar) {
     from android.sourceSets.main.java.srcDirs
-    classifier = 'sources'
+    archiveClassifier.set('sources')
 }
 
 tasks.register('javadoc', Javadoc) {
@@ -40,7 +42,7 @@ tasks.register('javadoc', Javadoc) {
 
 tasks.register('javadocJar', Jar) {
     dependsOn javadoc
-    classifier = 'javadoc'
+    archiveClassifier.set('javadoc')
     from javadoc.destinationDir
 }
 

+ 9 - 6
app/build.gradle

@@ -5,7 +5,7 @@ plugins {
 
 android {
     namespace 'com.pan_american.android'
-    compileSdk 33
+    compileSdk 34
 
     buildFeatures {
         viewBinding true
@@ -14,7 +14,7 @@ android {
     defaultConfig {
         applicationId "com.pan_american.android"
         minSdk 24
-        targetSdk 33
+        targetSdk 34
         versionCode 6
         versionName "1.0.5"
 
@@ -57,9 +57,9 @@ dependencies {
 
     implementation 'com.android.tools:r8:8.3.37'
 
-    implementation 'androidx.core:core-ktx:1.10.1'
-    implementation 'androidx.appcompat:appcompat:1.6.1'
-    implementation 'com.google.android.material:material:1.8.0'
+    implementation 'androidx.core:core-ktx:1.13.0'
+    implementation 'androidx.appcompat:appcompat:1.7.0'
+    implementation 'com.google.android.material:material:1.10.0'
 
     implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
     implementation 'androidx.recyclerview:recyclerview:1.3.1'
@@ -97,6 +97,9 @@ dependencies {
     //扇形图组件
     implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'
 
-    //url uri 图片展示组件
+    //url/uri 图片展示组件
     implementation 'com.squareup.picasso:picasso:2.8'
+
+    //图片选择框架
+    implementation 'io.github.leavesczy:matisse:2.1.0'
 }

+ 5 - 5
app/src/main/java/com/pan_american/android/ui/group_invite_official/invite_data/AddInviteDataActivity.kt

@@ -131,7 +131,7 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
                         if (selectedImageUri != null) {
 
                             fileListItem.add(FileListItem().apply {
-                                fileName = File(uri2Path(selectedImageUri)).name
+                                fileName = File(getFileName(selectedImageUri)).name
 
                                 if (fileName.isBlank()) {
                                     showMessage(resources.getString(R.string.file_select_error_hint))
@@ -877,18 +877,18 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
             })
     }
 
-    private fun uri2Path(uri: Uri): String {
-        var filePath = ""
+    private fun getFileName(uri: Uri): String {
+        var fileName = ""
         val projection = arrayOf(OpenableColumns.DISPLAY_NAME)
         contentResolver.query(uri, projection, null, null, null)?.use { cursor ->
             if (cursor.moveToFirst()) {
                 val columnIndex =
                     cursor.getColumnIndexOrThrow(OpenableColumns.DISPLAY_NAME)
-                filePath = cursor.getString(columnIndex)
+                fileName = cursor.getString(columnIndex)
             }
         }
 
-        return filePath
+        return fileName
     }
 
     private fun openFileManager() {

+ 3 - 3
build.gradle

@@ -1,6 +1,6 @@
 // Top-level build file where you can add configuration options common to all sub-projects/modules.
 plugins {
-    id 'com.android.application' version '7.4.1' apply false
-    id 'com.android.library' version '7.4.1' apply false
-    id 'org.jetbrains.kotlin.android' version '1.8.0' apply false
+    id 'com.android.application' version '8.4.0' apply false
+    id 'com.android.library' version '8.4.0' apply false
+    id 'org.jetbrains.kotlin.android' version '1.9.0' apply false
 }

+ 3 - 3
gradle/wrapper/gradle-wrapper.properties

@@ -1,6 +1,6 @@
-#Mon Mar 20 16:24:38 CST 2023
+#Tue Sep 10 17:36:13 CST 2024
 distributionBase=GRADLE_USER_HOME
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
 distributionPath=wrapper/dists
-zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
 zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists

+ 1 - 0
settings.gradle

@@ -29,3 +29,4 @@ dependencyResolutionManagement {
 rootProject.name = "OASystem"
 include ':app'
 include ':MPChartLib'
+include ':Matisse-master'