simplify code of getting file

optimize animation
This commit is contained in:
BinTianqi
2024-05-11 15:34:10 +08:00
parent 8224211f3c
commit a8de0ed986
11 changed files with 82 additions and 59 deletions

View File

@@ -1,14 +1,20 @@
package com.bintianqi.owndroid
import android.content.ClipData
import android.content.ClipboardManager
import android.content.Context
import android.app.admin.DevicePolicyManager
import android.content.*
import android.net.Uri
import android.widget.Toast
import androidx.activity.ComponentActivity
import androidx.activity.result.ActivityResultLauncher
import androidx.activity.result.contract.ActivityResultContracts
import com.bintianqi.owndroid.dpm.*
import java.io.FileNotFoundException
import java.io.IOException
import java.io.InputStream
lateinit var getFile: ActivityResultLauncher<Intent>
var fileUri: Uri? = null
fun uriToStream(
context: Context,
uri: Uri?,
@@ -54,3 +60,23 @@ fun writeClipBoard(context: Context, string: String):Boolean{
}
return true
}
fun registerActivityResult(context: ComponentActivity){
getFile = context.registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {activityResult ->
activityResult.data.let {
if(it==null){
Toast.makeText(context.applicationContext, R.string.file_not_exist, Toast.LENGTH_SHORT).show()
}else{
fileUri = it.data
}
}
}
createManagedProfile = context.registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {}
addDeviceAdmin = context.registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {
val myDpm = context.applicationContext.getSystemService(ComponentActivity.DEVICE_POLICY_SERVICE) as DevicePolicyManager
if(myDpm.isAdminActive(ComponentName(context.applicationContext, Receiver::class.java))){
backToHome = true
}
}
}