首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StartActivityForResult转换

StartActivityForResult转换
EN

Stack Overflow用户
提问于 2022-05-30 12:09:13
回答 2查看 47关注 0票数 -2
代码语言:javascript
复制
override fun onRequestPermissionsResult(
    requestCode: Int,
    permissions: Array<out String>,
    grantResults: IntArray
) {
    super.onRequestPermissionsResult(requestCode, permissions, grantResults)
    onRequestPermissionsResult(requestCode, grantResults)
}

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
    super.onActivityResult(requestCode, resultCode, data)
    if (requestCode == Consts.LocationService.REQUEST_LOCATION) {
        locationHelper.onActivityResult(requestCode)
    }
}

让我知道如何将上面的代码块转换为新的方式。

“onActivityResult( Int,Int,意图?):单元”被废弃。

EN

回答 2

Stack Overflow用户

发布于 2022-05-30 12:31:51

步骤1:

代码语言:javascript
复制
private val fileChooserIntent: Intent
        get() {
            val mimeTypes = arrayOf("*/*")
            val intent = Intent(Intent.ACTION_GET_CONTENT)
            intent.addCategory(Intent.CATEGORY_OPENABLE)
            intent.type = "*/*"
            intent.putExtra(Intent.EXTRA_MIME_TYPES, mimeTypes)
            return intent
        }

步骤2:

代码语言:javascript
复制
val intent = fileChooserIntent
fileChooseActivity.launch(intent)

步骤3:

代码语言:javascript
复制
private var fileChooseActivity = registerForActivityResult(
        ActivityResultContracts.StartActivityForResult()
    ) { result: ActivityResult ->
        // Your On Activity Result
    }
票数 0
EN

Stack Overflow用户

发布于 2022-05-30 12:53:27

代码语言:javascript
复制
implementation 'com.androidisland.ezpermission:ezpermission:0.1.4'

这个库很有用,而且很容易使用。

代码语言:javascript
复制
EzPermission.with(this).permissions(permissions).request { 
   granted: Set<String>,
   denied: Set<String>,
   permanentlyDenied: Set<String> ->
    // Do what ever after getting request
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72434110

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档