繁体   English   中英

Android - 如何从 Imageview 图像创建文件对象

[英]Android - how to create file object from Imageview image

我正在制作和 android 应用程序,它允许用户从手机中选择图像并将其加载到 ImageView。 进一步的过程是将图像作为 POST 请求发送到 PHP 脚本

如果我将图像从文件位置加载到 File 对象,一切正常,但这需要用户在手机上打开允许应用访问和管理本地文件的设置。

那么,有没有办法将图像从 imagview 读取到 File 对象中? 这是我当前的工作代码

    val fil = File(getRealPathFromURI(imageUri!!).toString())
    
                if (Build.VERSION.SDK_INT >= 30){
                    if (!Environment.isExternalStorageManager()){
                        var getpermission =  Intent()
                        getpermission.setAction(Settings.ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION);
                        startActivity(getpermission);
                    }
                }
    
    
                var reqB = RequestBody.create("image/*".toMediaTypeOrNull(),fil)
               
                var part = MultipartBody.Part.createFormData("file",fil.name,reqB)

如果用户不允许通过手机上的设置将 Kotlin 加载到 File 对象,则 Kotlin 会引发访问错误。 我相信这是android上的安全问题。

我真正想做的是

  1. 让用户选择手机上的现有图像
  2. 在图像视图中显示它
  3. 创建一个函数,将所选图像放入 MultipartBody.part 中,而无需用户授予应用程序访问特殊权限

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM