问题标签 [android-ndk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
11684 浏览

android-ndk - 我怎么知道我正在运行的 android ndk 版本

在 gui 中,您可以转到 Settings->About Phone->Firmware Version 并获取 2.1(或其他)。如何从命令行(或需要在运行时执行此操作的本机应用程序)执行此操作?

0 投票
1 回答
295 浏览

android - 如何将我自己的库上传到 Nexus one?

我正在将我的原生 C 引擎移植到android 2.1 using NDK r6,但我不能使用以下命令:adb rootadb remout我的 Nexus 引擎。我应该如何将我的引擎(.so 文件)上传到 Nexus one?

0 投票
1 回答
1377 浏览

android - Android ndk中如何使用opengl接口

如果我想在android ndk中使用opengl接口,可以给我一个简单的教程让我掌握android ndk吗?</p>

我只想知道如何先在android ndk中操作。

0 投票
4 回答
14677 浏览

android - Android 上的 MP3 解码

我们正在为 Android 手机实施一个程序,该程序可以播放来自互联网的音频流。这大概是我们所做的:

  1. 下载自定义加密格式。
  2. 解密以获取大量常规 MP3 数据。
  3. 将 MP3 数据解码为内存缓冲区中的原始 PCM 数据。
  4. 将原始 PCM 数据通过管道传输到 AudioTrack

到目前为止,我们的目标设备是 Droid 和 Nexus One。在 Nexus One 上一切正常,但在 Droid 上 MP3 解码太慢了。如果我们将 Droid 置于负载下,音频播放就会开始跳过。我们不允许将 MP3 数据解码到 SD 卡,但我知道这不是我们的问题。

我们没有编写自己的 MP3 解码器,而是使用了 MPADEC ( http://sourceforge.net/projects/mpadec/ )。它是免费的,并且很容易与我们的程序集成。我们用 NDK 编译它。

在使用各种分析工具进行详尽分析后,我们确信正是这个解码器落后了。

以下是我们正在考虑的选项:

  1. 找到另一个我们可以使用 Android NDK 编译的 MP3 解码器。该 MP3 解码器必须进行优化以在移动 ARM 设备上运行,或者可能使用仅整数数学或其他一些优化来提高性能。

  2. 由于内置的​​ Android MediaPlayer 服务将获取 URL,我们可以在我们的程序中实现一个小型 HTTP 服务器,并为 MediaPlayer 提供解密的 MP3。这样我们就可以利用内置的 MP3 解码器。

  3. 通过 NDK 访问内置 MP3 解码器。我不知道这是否可能。

有人对我们可以做些什么来加快 MP3 解码有任何建议吗?

-- 罗布斯

0 投票
2 回答
359 浏览

c++ - 谁能解释不支持 Android 中的 C 运行时的哪些功能(通过 NDK)?

更具体地说,NDK 是否有完整的 STL 实现。我们正在为运行 1.6 及更高版本的设备考虑这一点。

0 投票
9 回答
9320 浏览

android - 用于开发的 Android 手机...?

我计划将一些游戏从 iPhone/Windows Mobile 移植到 Android 平台。这些游戏是用 C++ 编写的,所以我计划使用带有一个瘦 Java 包装器的 NDK。

我是 Android 平台的新手,需要一些关于购买哪款手机进行开发的建议。我怀疑像 Windows Mobile 一样,支持不同功能(键盘/旋转/屏幕尺寸/电容式触摸屏等)的不同手机存在一定程度的碎片化。

在 Android 平台上进行开发的最佳设备是什么……?

它们还必须在英国/欧洲上市。

先感谢您。尼科斯。

0 投票
2 回答
1260 浏览

android - Android 平台上是否有针对 OpenGL ES 2.0 的 java 绑定?

我知道最近发布的 android ndk r3 在支持的手机上支持 opengl es 2.0(例如,nexus one),但是它没有说明 SDK 中是否包含 opengl es 2.0 的 java 绑定。是否在路上说绑定,如果没有,JOGL2 是否支持 android 上的 opengl es 2.0 配置文件?

0 投票
1 回答
5712 浏览

java - 如何在不崩溃的情况下处理从 jni 对 AudioTrack 的调用?

我试图从 jni 回调写入 AudioTrack,我得到一个信号 7(SIGBUS),故障地址 00000000。

我查看了 odroid 的 Wolf3D 示例他们似乎使用 android.os.Handler 发布一个 Runnable,它将在正确的线程上下文中进行更新。我也尝试过 AttachCurrentThread,但在这种情况下我也失败了。

即使我将它包装在一个线程中然后将其发布到处理程序,它也可以在从构造函数运行时播放声音。当我通过 jni 的回调执行“相同”操作时,它会失败。我假设我正在制定一些规则,但我无法弄清楚它们是什么。到目前为止,我还没有在 SO 上找到答案。

所以我想知道是否有人知道这应该怎么做。

编辑:在下面回答。

下面的代码就是为了说明问题。

爪哇:

cp:

跟踪片段:

0 投票
1 回答
708 浏览

android - 在 Android 中执行添加 2 个 LARGE 浮点数组的快速方法。可选 JNI 或 Opengl ES

我只需要将 floatArray1 添加到 floatArray2 中,将结果存储在 floatArray2 中。没有第三个数组。所有数组都是一维的,但是非常大……可能与操作系统一样大,让我侥幸逃脱。我需要的最大值是两个浮点数组,每个数组有 40,000 个浮点数......但我可以得到我认为最小值的 1/10。

希望在 1/30 或 1/60 秒内完成此操作,但这似乎不可能?此外,如果代码是 JNI、NDK 或 OpenGL ES,那也没关系.. android 是否有汇编语言或类似机器代码,我可以以某种方式使用?

0 投票
4 回答
28486 浏览

android - Android OpenAL?

有没有人为 Android 构建过 OpenAL,或者在系统上找到了它的共享库?这似乎是对任何类型游戏的明显需求,但那里没有资源。据我所知,Android java 声音库似乎无法进行音高更改,因此似乎需要 OpenAL。我知道 OpenAL Soft 可以构建在 ALSA 之上,但我不确定是否有人这样做,而且我敢肯定这需要我一个月的时间。

如果在没有 OpenAL 的情况下在 Android 上的声音处理方面有很好的指南,那也很好。只是 OpenAL 是游戏制作者的一种标准,将我的数千行移植到这个系统会很好,在我深入研究之前,我认为这是 NDK 的重点,发现几乎没有系统上的共享库访问。

谢谢.. 我希望我自己可以在不成为 Java 专家的情况下进行移植。到目前为止真的不喜欢NDK!