将 RenderScript 与 Android NDK 一起使用

Using RenderScript with Android NDK

我正在尝试 运行 一个关于如何使用 android NDK 中的 RenderScript 的简单示例。我找到了这个例子:

https://github.com/uelordi01/Call_RenderScript_from_NDK

但是当我 运行 我的应用程序(来自 Android studio)时,它不适合某些库(看起来像)。

这是 logcat 输出:

04-26 16:18:11.705 26653-26653/uelordi.android.hellocomputendk_rs 
E/RS Dispatch: Couldn't initialize dispatchTab.ScriptInvokeIDCreate
04-26 16:18:11.705 26653-26653/uelordi.android.hellocomputendk_rs V/rsC++: 
libRS.so init failed!
04-26 16:18:11.705 26653-26653/uelordi.android.hellocomputendk_rs W/linker: 
libRSSupport.so: unused DT entry: type 0x6ffffef5 arg 0x37720
04-26 16:18:12.018 26653-26859/uelordi.android.hellocomputendk_rs 
E/RenderScript: Couldn't load libRSSupportIO.so
04-26 16:18:12.034 26653-26859/uelordi.android.hellocomputendk_rs 
E/RenderScript: Unable to open shared library 
(/data/data/uelordi.android.hellocomputendk_rs//lib/librs.mono.so): dlopen 
failed: library "libRSSupportIO.so" not found
04-26 16:18:12.034 26653-26859/uelordi.android.hellocomputendk_rs     
E/RenderScript: Unable to open system shared library     
(/system/lib/librs.mono.so): (null)
04-26 16:18:12.034 26653-26653/uelordi.android.hellocomputendk_rs E/rsC++: 
Internal error: Object id 0.

(渲染脚本文件名为mono.rs)

我想我应该在某处添加一些库(libRS.so,libRSSupportIO.so)但我不知道在哪里、如何以及为什么(因为这个例子应该自己工作)

此错误发生在以下行: sc->forEach_root(inputAlloc, outputAlloc);

边题:

我查看了互联网,但没有找到太多(没有最新信息)。 Renderscript 仍然是 2017 年的东西,对吧?

android 发展的乐趣。我找到了解决方案!我只需要更改:

minSdkVersion 19

至:

minSdkVersion 21

老实说,我不知道该如何解释。如果有人有解释,那就太好了!