我想上传一张图片到firestore,所以我需要获取uri。
首先,我尝试使用 TedBottomPicker https://github.com/ParkSangGwon/TedBottomPicker并且效果很好。
TedBottomPicker.with(activity as AppCompatActivity)
.showCameraTile(false)
.show { uri ->
uriToUpdate = uri.toString()
}
现在我想做同样的事情,但使用我设备的文件浏览器
val fileBrowserImg = registerForActivityResult(ActivityResultContracts.GetContent()) { uri ->
if(uri != null){
uriToUpdate = uri.toString()
}
}
问题是 registerForActivityResult 的 uri 与 TedBottomPicker 不同,使用这个新的 uri 我无法上传图像,因为应用程序崩溃了。
带有 TedBottomPicker 的 Uri:file:///storage/emulated/0/Pictures/Instagram/IMG_20211117_141540_772.webp
带有 registerForActivityResult 的 Uri:content://com.android.providers.media.documents/document/image%3A14430
我怎样才能像 TedBottomPicker 一样获得 uri?谢谢!