2011-03-10 45 views
8

在NDK中构建本地音频样本时,我遇到问题。 主要原因是“SLES/OpenSLES.h:没有这样的文件或目录”在NDK构建问题中的本地音频样本

我已经使用Google,但我没有发现任何有用的东西。

请帮帮我。

在此先感谢

回答

3

我也有这个问题,但现在,它的工作原理。 您应该完全使用Android API 9. 在Eclipse中,从目标为Android 2.3.1的现有源(本机音频样本)创建一个新项目,然后使用ndk-build构建共享库。最后,通过常见的方式在Ecclipse中构建您的项目。 希望它能帮助你。

+0

感谢您的回答,我想为android 1.6构建本地音频应用程序。但正如你所说,这是不可能的,不是吗? – 2011-04-07 15:04:55

+0

是的,这是不可能的。它使用的方法暴露了API 9之后包含的NativeAudio播放器界面 - 这就是API 9中的均衡器的方式。 – 2011-07-05 13:55:49

11

如果从命令行建设,尝试

NDK建造TARGET_PLATFORM = Android的9

+0

如果我不使用命令行呢?有没有其他方法? – 2015-04-17 07:00:01

+0

目前我使用Android NDK(ndk10d)和eclipse我尝试使用命令行,但无法解决此问题。我得到同样的问题。有没有其他方法?如果我从Android NDK复制SLES文件夹,那么错误是解决,但我想知道这是正确的方式? – 2015-04-22 13:22:47

+0

将此添加到您的Application.mk也有助于APP_PLATFORM:= android-9 – 2016-02-12 23:59:14

6

这是由于您的Android版本。构建时指定android版本。

NDK建造TARGET_PLATFORM = Android的9

+1

太棒了!这解决了这个问题....谢谢.. :) – Antony 2014-01-08 14:12:00

+0

如果我不使用命令行呢?有没有其他方法? – 2015-04-17 07:00:22

3

如果您正在使用Android StudioApplication.mk文件。

//replace 'x' with the platform version you are targeting 
APP_PLATFORM := android-x 

Click here为NDK-R 10c中参考:设置Android平台版本。我使用的是ndk-r10e,它仍然使用相同的变量。

0

Android Studio中,你可以通过添加以下行project.properties文件解决了这个问题:

target=android-23 // replace 23 with the api you are targeting 

project.properties文件应位于“主”目录中,如果它不在那里,你可以创建该文件,它应该可以正常工作。