This commit is contained in:
kunfei 2023-01-25 17:54:19 +08:00
parent f315265309
commit ece0c65612
4 changed files with 33 additions and 5 deletions

View File

@ -1,21 +1,20 @@
package io.legado.app.utils package io.legado.app.help
import android.net.Uri import android.net.Uri
import androidx.annotation.Keep
import java.io.File import java.io.File
@Keep
object IntentType { object IntentType {
@JvmStatic
fun from(uri: Uri): String? { fun from(uri: Uri): String? {
return from(uri.toString()) return from(uri.toString())
} }
@JvmStatic
fun from(file: File): String? { fun from(file: File): String? {
return from(file.absolutePath) return from(file.absolutePath)
} }
@JvmStatic
fun from(path: String?): String? { fun from(path: String?): String? {
return when (path?.substringAfterLast(".")?.lowercase()) { return when (path?.substringAfterLast(".")?.lowercase()) {
"apk" -> "application/vnd.android.package-archive" "apk" -> "application/vnd.android.package-archive"

View File

@ -0,0 +1,28 @@
package io.legado.app.help
import android.net.Uri
import androidx.annotation.Keep
import java.io.File
@Keep
object IntentType {
fun from(uri: Uri): String? {
return from(uri.toString())
}
fun from(file: File): String? {
return from(file.absolutePath)
}
fun from(path: String?): String? {
return when (path?.substringAfterLast(".")?.lowercase()) {
"m4a", "mp3", "mid", "xmf", "ogg", "wav" -> "video/*"
"3gp", "mp4" -> "audio/*"
"jpg", "gif", "png", "jpeg", "bmp" -> "image/*"
"txt", "json" -> "text/plain"
else -> null
}
}
}

View File

@ -12,7 +12,7 @@ import io.legado.app.R
import io.legado.app.base.BaseService import io.legado.app.base.BaseService
import io.legado.app.constant.AppConst import io.legado.app.constant.AppConst
import io.legado.app.constant.IntentAction import io.legado.app.constant.IntentAction
import io.legado.app.utils.IntentType import io.legado.app.help.IntentType
import io.legado.app.utils.openFileUri import io.legado.app.utils.openFileUri
import io.legado.app.utils.servicePendingIntent import io.legado.app.utils.servicePendingIntent
import io.legado.app.utils.toastOnUi import io.legado.app.utils.toastOnUi

View File

@ -29,6 +29,7 @@ import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel
import io.legado.app.R import io.legado.app.R
import io.legado.app.constant.AppConst import io.legado.app.constant.AppConst
import io.legado.app.help.IntentHelp import io.legado.app.help.IntentHelp
import io.legado.app.help.IntentType
import splitties.systemservices.clipboardManager import splitties.systemservices.clipboardManager
import splitties.systemservices.connectivityManager import splitties.systemservices.connectivityManager
import java.io.File import java.io.File