无法在Android GB 2.3.5上运行Renderscript HelloCompute示例

时间:2013-09-22 14:48:27

标签: android renderscript

我尝试在Android 2.3.5上运行Renderscript示例HelloCompute。

(我使用 v22.2.1-833290 SDK 22.2.1 我从Logcat收到错误消息:

W/dalvikvm( 4928): VFY: unable to resolve static method 412: Landroid/renderscript  /RenderScript;.create (Landroid/content/Context;)Landroid/renderscript/RenderScript;  
W/dalvikvm( 4928): threadid=1: thread exiting with uncaught exception (group=0x4002d560)  
E/AndroidRuntime( 4928): FATAL EXCEPTION: main  
E/AndroidRuntime( 4928): java.lang.NoSuchMethodError:   android.renderscript.RenderScript.create  

为了制作apk包,我在构建步骤中添加了 Android支持库v13

我想renders脚库未正确添加到构建步骤中。 抱歉,我找不到 Android支持库v8 ,如下所示 http://android-developers.blogspot.com/2013/09/renderscript-in-android-support-library.html

如何克服这个问题?

7 个答案:

答案 0 :(得分:4)

看看/build-tools/18.1.0/lib/renderscript-v8.jar

答案 1 :(得分:3)

我遇到了类似的问题,但终于解决了。

我的经历:

我指的是这个链接 - > http://www.doubleencore.com/2013/10/renderscript-for-all/导入android.support.v8.renderscript。

然后遇到错误 - >

VFY:无法解析静态方法106:Landroid / support / v8 / renderscript / RenderScript; create(Landroid / content / Context;)Landroid / support / v8 / renderscript / RenderScript;。

最后发现我的错误,我忘了在“Java Build Path”的“Order and Export”中启用jar。

启用jar后,我的应用程序终于可以正常工作了。

希望我的经历可以帮助任何人。 :)

答案 2 :(得分:2)

v13支持库适用于Honeycomb,您需要v8支持库。您还必须引用android.support.v8.renderscript,而不是android.renderscript

答案 3 :(得分:1)

将此行添加到.classpath中:

<classpathentry kind="lib" path="out/target/common/obj/JAVA_LIBRARIES/android-support-v8-renderscript_intermediates/javalib.jar"/>

或者,构建路径 - &gt;配置构建路径 - &gt;图书馆 - &gt;添加JAR - &gt;添加“out / target / common / obj / JAVA_LIBRARIES / android-support-v8-renderscript_intermediates / javalib.jar”

答案 4 :(得分:1)

From here

  

在你的project.properties中,确保你的目标是android-18和   添加以下行:

     

renderscript.target = 18

     

renderscript.support.mode = true sdk.buildtools = 18.1.0

现在清理项目。您应该看到将renderscript-v8.jar添加到您的Android Dependenmcies。

答案 5 :(得分:1)

我收到了这个错误:

E/AndroidRuntime(12762): Caused by: java.lang.NoSuchMethodError: no static or non-static method "Landroid/support/v8/renderscript/RenderScript;.nDeviceSetConfig(JII)V"

我需要在build.gradle

中使用它
renderscriptTargetApi 22
renderscriptSupportModeEnabled true

然后需要将此添加到我的发布版本的自定义proguard规则

# Renderscript support library
-keep class android.support.v8.renderscript.** { *; }

答案 6 :(得分:0)

将/build-tools/24.0.3/renderscript/lib/renderscript-v8.jar复制到您的项目libs文件夹,并将其添加到您的依赖项compile fileTree(dir: 'libs', include: ['*.jar']) 这对我有用,希望它对你也有帮助。