Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Eclipse可以';t读取RenderScript.rs文件的代码格式_Android_C_Eclipse_C99_Renderscript - Fatal编程技术网

Android Eclipse可以';t读取RenderScript.rs文件的代码格式

Android Eclipse可以';t读取RenderScript.rs文件的代码格式,android,c,eclipse,c99,renderscript,Android,C,Eclipse,C99,Renderscript,我对Android有很好的Java知识(1年的开发),现在我正在尝试学习Android RenderScript API(但没有太多文档),不管怎样,我在这方面遇到了一些问题 我了解到我们需要在project.propert上添加以下行: renderscript.target=19 renderscript.support.mode=true 我在com.mypackage.script中创建了一个名为FireworkScript的.rs文件,该文件具有以下内容: #pragma versi

我对Android有很好的Java知识(1年的开发),现在我正在尝试学习Android RenderScript API(但没有太多文档),不管怎样,我在这方面遇到了一些问题

我了解到我们需要在
project.propert
上添加以下行:

renderscript.target=19
renderscript.support.mode=true
我在
com.mypackage.script
中创建了一个名为
FireworkScript
的.rs文件,该文件具有以下内容:

#pragma version(1)

#pragma rs java_package_name(com.mypackage.script)

#include "rs_graphics.rsh"

int root(){

    return 0;

}

void init(){

} 
最初,我在RenderScript v8支持库方面遇到一些问题,但我通过手动将RenderScript-v8.jar添加到我的项目(构建路径>>配置构建路径>>库>>添加外部jar)来修复它

正如预期的那样,Eclipse在gen文件夹中生成了
ScriptC_FireworkScript.java
,在bin/res/bc/raw文件夹中生成了
FireworkScript.bc

但问题是:Eclipse不会“读取”.rs文件中的代码,使用Eclipse在该文件上写入与在任何单个文本编辑器上写入相同

我知道上面的示例需要一个内核,但是如果Eclipse不读取其代码格式,我如何编写它呢?我知道C中简单的
typedef struct
构造函数,但我不熟悉C99中的内核声明和参数

我只能使用
project>clean
查找错误,它似乎“刷新”了编译器,但无论如何,我没有任何识别帮助、文本着色等,只有一个带有黑色文本的文件,我能做些什么来修复它?我还尝试用devc++Notepad++打开.rs文件,但得到了相同的结果。也许我的机器不知道C99代码的格式

有什么我能做的吗

提前谢谢


我正在使用EclipseLuna和ADT插件,SDK构建工具目前在23.0.2上,所有内容都更新到最新版本。

RenderScript用于其内核代码的C99规范只是C,因此您可以使用任何能够编辑C/C++文件的编辑器,如您提到的两个。这至少可以帮助您突出显示语法。您只需要将它们配置为将.rs文件视为C代码。请参见说明如何在记事本++中执行此操作的示例


但是,如果您确实希望将所有内容都保留在Eclipse中,您也可以尝试为Eclipse安装C开发环境,但如果只是为了在其中突出显示语法,这可能会有些过分。我怀疑您是否会得到任何实际的上下文/函数帮助或更好的错误报告,因为无论如何RS API仍然没有很好地集成到任何IDE中。

谢谢,这确实会帮助我,但您知道这在eclipse中是否“正常”?无论如何,+1据我所知,目前Eclipse就是这样。我相信(我希望)他们最终会将RS API更好地集成到ADT中,以提供更好的错误反馈等(甚至可能是RenderScript调试),但目前情况就是这样。我经常与RS合作,而且我还必须像你提到的那样不断地清理项目,等等。谢谢你的帮助。你说你和RS合作,你知道以下问题吗?我把问题贴在这里了,请看一下,告诉我你的想法。我可以自己学习所有东西,我只想解决缺少类的问题:一个简单的解决方法:从Renderscript“*.rs”文件中,插入一行
#include
,然后将所有Renderscript代码(或突出显示对您很重要的代码行)放在那里。谷歌正在向Android Studio迈进。Android ADT是谷歌提供的插件;因此,Eclipse不负责解决这个问题。不要期望在EclipseAndroid ADT.Thx@rwong上有太多Google增强功能,我非常感谢您的帮助,谢谢!