我正在使用Camera2 API,并且正在使用Renderscript执行一些图像处理。除S9 +之外,其他设备(Nexus 5/5x,Pixel,Pixel 2,S8 +,Note 8)的所有功能均可正常运行。

基本上,我正在做的是创建一个Allocation来接收相机数据,以及另一个将使用相机数据的Allocation,应用转换并将结果显示在Surface上,该图片将用作相机预览。
在S9 +上,我得到黑屏(没有预览),LogCat显示以下错误:

android - 三星Galaxy S9 +渲染脚本错误-LMLPHP

我阅读了有关此类错误的其他文章,但由于我的代码在其他设备上可以正常工作,因此它们不适用于我的情况!

我设法将错误归结为一个本地库加载问题:
android - 三星Galaxy S9 +渲染脚本错误-LMLPHP

这仅发生在S9上,其他三星设备可以正常工作。

S8 +在Android Nougat(24)上,而S9 +在Oreo(26)上,都具有OpenGL ES 3.2。

有谁知道如何解决这个问题?

PS:在运行Oreo的其他设备上进行了测试,没有任何问题

编辑

我已将S9 +更新到最新版本( R16NW.G965FXXU1ARCC ),但问题仍然存在。
另外,根据评论建议,我检查了/vendor/lib64 文件夹,以检查是否存在libbccArmlibccc,但仅存在其中之一:

android - 三星Galaxy S9 +渲染脚本错误-LMLPHP

之后编辑

在系统上找到了libbcc.so,但S9 +似乎缺少32位版本(左侧为S8 +,右侧为S9 +)

android - 三星Galaxy S9 +渲染脚本错误-LMLPHP

最佳答案

最新更新修复了renderscript问题(我现在可以处理1920x1080图像)。

在Galaxy S9 +上测试,内部版本号R16NW.G965FXXU1BRE5

关于android - 三星Galaxy S9 +渲染脚本错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49627249/

10-09 05:12