xkeee
xkeee
  • 发布:2024-11-22 08:30
  • 更新:2024-11-22 11:30
  • 阅读:49

uts组件开发:怎么读取APP的图片资源,转换为Bitmap对象,传给第三方sdk?

分类:uts

//------------下面是SDK的调用说明,要求传入一个图片资源Bitmap:
// 选择期望的色彩滤镜文件,滤镜文件可以在小直播 App 的资源文件中获取(以 tuibeautyfilter 开头的 .png 文件)。
Bitmap filterBmp = decodeResource(getResources(), R.drawable.tuibeauty_filter_biaozhun);
mLivePusher.getBeautyManager().setFilter(filterBmp);

问题:
1,uts组件开发时,怎么读取一个本地图片文件?目的就是构建一个bitmap的实例。
2,这个图片资源,应该是放在:组件->static 里吗? 还是要放在 组件->utssdk->app-android->assets里?安卓和IOS都要使用。

2024-11-22 08:30 负责人:无 分享
已邀请:

最佳回复

z***@qq.com

z***@qq.com

放在 static 里面,然后拿路径直接转换就行,至于怎么转换你要自己去查一下

  • xkeee (作者)

    关键是不知道怎么把这个图片读取出来,形成一个bitmap实例,把uts文档和demo看了N遍,也没找到相关代码~

    2024-11-22 09:36

  • z***@qq.com

    回复 xkeee: 去问chatgtp那种

    2024-11-22 10:01

  • xkeee (作者)

    回复 z***@qq.com: 明白,正在进行中...

    2024-11-22 10:02

  • z***@qq.com

    new File(UTSAndroid.getResourcePath(url as string)) 这个应该是url传入 ‘static/logo.png’ 类似这样的一个地址传过去拿到的一个File ,剩下怎么转bitmap你自己去查看看

    2024-11-22 10:09

Worry

Worry

将图片转base64,然后在uts插件那边用原生方法将base64转Bitmap

function base64ToBitmap(base64Data : string) : Bitmap {  
    const mDecodeData = Base64.decode(base64Data, Base64.DEFAULT);  
    const mBitmap = BitmapFactory.decodeByteArray(mDecodeData, 0, mDecodeData.size)  
    return mBitmap  
}
  • xkeee (作者)

    多谢亲,但是这绕了一圈,按理说,直接从静态资源类里读取图片文件就可以了,我在尝试为什么openFd不可以。

    2024-11-22 12:54

要回复问题请先登录注册