Android 12 更新后共享 JPEG 时不支持文件格式

问题描述

在 Android 12 更新后,我的代码突然停止工作。我在装有 android 10 的设备中尝试了相同的代码,并且运行良好。

private fun getUriFromBitmap(bmp: Bitmap?): Uri? {
    var bmpuri: Uri? = null
    try {
        val file = File(this.externalCacheDir,System.currentTimeMillis().toString() + ".jpeg")
        val out = FileOutputStream(file)
        bmp?.compress(Bitmap.CompressFormat.JPEG,90,out)
        out.close()
        bmpuri = Uri.fromFile(file)

    } catch (e: IOException) {
        e.printstacktrace()
    }
    return bmpuri
}

//编辑:

我刚刚发现以前的方法在我获得位图的地方失败了

private fun getBitmapFromView(view: View): Bitmap {
    share_comprobante_btn.visibility = View.GONE
    backArrow.visibility = View.GONE

    val bitmap = Bitmap.createBitmap(view.width,view.height,Bitmap.Config.ARGB_8888)
    val canvas = Canvas(bitmap)
    view.draw(canvas)

    share_comprobante_btn.visibility = View.VISIBLE
    backArrow.visibility = View.VISIBLE

    return bitmap
}

那个 val 位图现在在 android 12 中返回“”

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...