diff --git a/.gitignore b/.gitignore index e3bdbed..b30b988 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ .cxx local.properties /app/build +/app/release \ No newline at end of file diff --git a/.gitignore b/.gitignore index e3bdbed..b30b988 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ .cxx local.properties /app/build +/app/release \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 64d4d0c..2cbb61b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -26,6 +26,15 @@ } } + signingConfigs { + release { + storeFile file('endoscope.jks') + storePassword '123456789' + keyAlias 'key0' + keyPassword '123456789' + } + } + sourceSets { main { jniLibs.srcDir 'libs' diff --git a/.gitignore b/.gitignore index e3bdbed..b30b988 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ .cxx local.properties /app/build +/app/release \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 64d4d0c..2cbb61b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -26,6 +26,15 @@ } } + signingConfigs { + release { + storeFile file('endoscope.jks') + storePassword '123456789' + keyAlias 'key0' + keyPassword '123456789' + } + } + sourceSets { main { jniLibs.srcDir 'libs' diff --git a/app/endoscope.jks b/app/endoscope.jks new file mode 100644 index 0000000..4b371f6 --- /dev/null +++ b/app/endoscope.jks Binary files differ diff --git a/.gitignore b/.gitignore index e3bdbed..b30b988 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ .cxx local.properties /app/build +/app/release \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 64d4d0c..2cbb61b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -26,6 +26,15 @@ } } + signingConfigs { + release { + storeFile file('endoscope.jks') + storePassword '123456789' + keyAlias 'key0' + keyPassword '123456789' + } + } + sourceSets { main { jniLibs.srcDir 'libs' diff --git a/app/endoscope.jks b/app/endoscope.jks new file mode 100644 index 0000000..4b371f6 --- /dev/null +++ b/app/endoscope.jks Binary files differ diff --git a/app/src/main/java/com/casic/endoscope/utils/FileManager.kt b/app/src/main/java/com/casic/endoscope/utils/FileManager.kt index 7d0b476..8e2e76f 100644 --- a/app/src/main/java/com/casic/endoscope/utils/FileManager.kt +++ b/app/src/main/java/com/casic/endoscope/utils/FileManager.kt @@ -1,11 +1,6 @@ package com.casic.endoscope.utils -import android.app.Activity -import android.content.Intent -import android.net.Uri -import android.os.Build import android.os.Environment -import android.provider.Settings import android.util.Log import com.pengxh.kt.lite.extensions.timestampToDate import java.io.File @@ -14,25 +9,13 @@ private const val kTag = "FileManager" private lateinit var directory: File - fun initRootDirectory(activity: Activity) { - //先判断MANAGE_EXTERNAL_STORAGE权限 - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { - if (!Environment.isExternalStorageManager()) { - val intent = Intent(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION) - intent.data = Uri.parse("package:${activity.packageName}") - activity.startActivity(intent) - } - } - + fun getRootDirectory(): File { directory = File("${Environment.getExternalStorageDirectory()}/Endoscope") if (!directory.exists()) { Log.d(kTag, "createRootDirectory: 新建文件夹") directory.mkdirs() } Log.d(kTag, "createRootDirectory: $directory") - } - - fun getRootDirectory(): File { return directory } diff --git a/.gitignore b/.gitignore index e3bdbed..b30b988 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ .cxx local.properties /app/build +/app/release \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 64d4d0c..2cbb61b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -26,6 +26,15 @@ } } + signingConfigs { + release { + storeFile file('endoscope.jks') + storePassword '123456789' + keyAlias 'key0' + keyPassword '123456789' + } + } + sourceSets { main { jniLibs.srcDir 'libs' diff --git a/app/endoscope.jks b/app/endoscope.jks new file mode 100644 index 0000000..4b371f6 --- /dev/null +++ b/app/endoscope.jks Binary files differ diff --git a/app/src/main/java/com/casic/endoscope/utils/FileManager.kt b/app/src/main/java/com/casic/endoscope/utils/FileManager.kt index 7d0b476..8e2e76f 100644 --- a/app/src/main/java/com/casic/endoscope/utils/FileManager.kt +++ b/app/src/main/java/com/casic/endoscope/utils/FileManager.kt @@ -1,11 +1,6 @@ package com.casic.endoscope.utils -import android.app.Activity -import android.content.Intent -import android.net.Uri -import android.os.Build import android.os.Environment -import android.provider.Settings import android.util.Log import com.pengxh.kt.lite.extensions.timestampToDate import java.io.File @@ -14,25 +9,13 @@ private const val kTag = "FileManager" private lateinit var directory: File - fun initRootDirectory(activity: Activity) { - //先判断MANAGE_EXTERNAL_STORAGE权限 - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { - if (!Environment.isExternalStorageManager()) { - val intent = Intent(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION) - intent.data = Uri.parse("package:${activity.packageName}") - activity.startActivity(intent) - } - } - + fun getRootDirectory(): File { directory = File("${Environment.getExternalStorageDirectory()}/Endoscope") if (!directory.exists()) { Log.d(kTag, "createRootDirectory: 新建文件夹") directory.mkdirs() } Log.d(kTag, "createRootDirectory: $directory") - } - - fun getRootDirectory(): File { return directory } diff --git a/app/src/main/java/com/casic/endoscope/view/MainActivity.kt b/app/src/main/java/com/casic/endoscope/view/MainActivity.kt index c2f935b..a11d711 100644 --- a/app/src/main/java/com/casic/endoscope/view/MainActivity.kt +++ b/app/src/main/java/com/casic/endoscope/view/MainActivity.kt @@ -6,9 +6,13 @@ import android.content.Intent import android.graphics.Color import android.graphics.PixelFormat +import android.net.Uri +import android.os.Build import android.os.Bundle +import android.os.Environment import android.os.Handler import android.os.Message +import android.provider.Settings import android.util.Log import android.view.KeyEvent import android.view.MotionEvent @@ -83,6 +87,7 @@ private val marginOffset by lazy { 10.dp2px(this) } private val selectedSpeed = 7 private val messageCode = 2024021901 + private val requestManageFilesAccess = 2024041301 private val bluetoothDevices = ArrayList() private val xAxisLabels = ArrayList() private val densityEntries = ArrayList() @@ -122,7 +127,26 @@ return ActivityMainBinding.inflate(layoutInflater) } + override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { + super.onActivityResult(requestCode, resultCode, data) + if(requestCode == requestManageFilesAccess){ + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + FileManager.getRootDirectory() + } + } + } + override fun initOnCreate(savedInstanceState: Bundle?) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + if (!Environment.isExternalStorageManager()) { + val intent = Intent(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION) + intent.data = Uri.parse("package:${packageName}") + startActivityForResult(intent, requestManageFilesAccess) + } else { + FileManager.getRootDirectory() + } + } + //显示数据 weakReferenceHandler = WeakReferenceHandler(this) weakReferenceHandler.sendEmptyMessage(messageCode) diff --git a/.gitignore b/.gitignore index e3bdbed..b30b988 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ .cxx local.properties /app/build +/app/release \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 64d4d0c..2cbb61b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -26,6 +26,15 @@ } } + signingConfigs { + release { + storeFile file('endoscope.jks') + storePassword '123456789' + keyAlias 'key0' + keyPassword '123456789' + } + } + sourceSets { main { jniLibs.srcDir 'libs' diff --git a/app/endoscope.jks b/app/endoscope.jks new file mode 100644 index 0000000..4b371f6 --- /dev/null +++ b/app/endoscope.jks Binary files differ diff --git a/app/src/main/java/com/casic/endoscope/utils/FileManager.kt b/app/src/main/java/com/casic/endoscope/utils/FileManager.kt index 7d0b476..8e2e76f 100644 --- a/app/src/main/java/com/casic/endoscope/utils/FileManager.kt +++ b/app/src/main/java/com/casic/endoscope/utils/FileManager.kt @@ -1,11 +1,6 @@ package com.casic.endoscope.utils -import android.app.Activity -import android.content.Intent -import android.net.Uri -import android.os.Build import android.os.Environment -import android.provider.Settings import android.util.Log import com.pengxh.kt.lite.extensions.timestampToDate import java.io.File @@ -14,25 +9,13 @@ private const val kTag = "FileManager" private lateinit var directory: File - fun initRootDirectory(activity: Activity) { - //先判断MANAGE_EXTERNAL_STORAGE权限 - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { - if (!Environment.isExternalStorageManager()) { - val intent = Intent(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION) - intent.data = Uri.parse("package:${activity.packageName}") - activity.startActivity(intent) - } - } - + fun getRootDirectory(): File { directory = File("${Environment.getExternalStorageDirectory()}/Endoscope") if (!directory.exists()) { Log.d(kTag, "createRootDirectory: 新建文件夹") directory.mkdirs() } Log.d(kTag, "createRootDirectory: $directory") - } - - fun getRootDirectory(): File { return directory } diff --git a/app/src/main/java/com/casic/endoscope/view/MainActivity.kt b/app/src/main/java/com/casic/endoscope/view/MainActivity.kt index c2f935b..a11d711 100644 --- a/app/src/main/java/com/casic/endoscope/view/MainActivity.kt +++ b/app/src/main/java/com/casic/endoscope/view/MainActivity.kt @@ -6,9 +6,13 @@ import android.content.Intent import android.graphics.Color import android.graphics.PixelFormat +import android.net.Uri +import android.os.Build import android.os.Bundle +import android.os.Environment import android.os.Handler import android.os.Message +import android.provider.Settings import android.util.Log import android.view.KeyEvent import android.view.MotionEvent @@ -83,6 +87,7 @@ private val marginOffset by lazy { 10.dp2px(this) } private val selectedSpeed = 7 private val messageCode = 2024021901 + private val requestManageFilesAccess = 2024041301 private val bluetoothDevices = ArrayList() private val xAxisLabels = ArrayList() private val densityEntries = ArrayList() @@ -122,7 +127,26 @@ return ActivityMainBinding.inflate(layoutInflater) } + override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { + super.onActivityResult(requestCode, resultCode, data) + if(requestCode == requestManageFilesAccess){ + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + FileManager.getRootDirectory() + } + } + } + override fun initOnCreate(savedInstanceState: Bundle?) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + if (!Environment.isExternalStorageManager()) { + val intent = Intent(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION) + intent.data = Uri.parse("package:${packageName}") + startActivityForResult(intent, requestManageFilesAccess) + } else { + FileManager.getRootDirectory() + } + } + //显示数据 weakReferenceHandler = WeakReferenceHandler(this) weakReferenceHandler.sendEmptyMessage(messageCode) diff --git a/app/src/main/java/com/casic/endoscope/view/PermissionActivity.kt b/app/src/main/java/com/casic/endoscope/view/PermissionActivity.kt index 770a441..ed85113 100644 --- a/app/src/main/java/com/casic/endoscope/view/PermissionActivity.kt +++ b/app/src/main/java/com/casic/endoscope/view/PermissionActivity.kt @@ -3,7 +3,6 @@ import android.os.Bundle import com.casic.endoscope.R import com.casic.endoscope.databinding.ActivityPermissionBinding -import com.casic.endoscope.utils.FileManager import com.casic.endoscope.utils.ProjectConstant import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity @@ -17,7 +16,6 @@ } override fun initOnCreate(savedInstanceState: Bundle?) { - FileManager.initRootDirectory(this) if (EasyPermissions.hasPermissions(this, *ProjectConstant.USER_PERMISSIONS)) { navigatePageTo() finish()