6

我尝试了 test-libstdc++ 演示,并且喜欢我可以从控制台启动它,并且无需运行成熟的 android 应用程序。

我想创建一个 opengl 上下文,这样我就可以从控制台中执行我的 opengl es 2.0 应用程序而无需太多麻烦。

知道如何从不使用本机活动或任何东西的 NDK 应用程序中初始化 EGL,即它甚至没有打包在 .APKK 文件中,只是将 main 方法打包为可执行的 linux 文件。

非常感谢!

更新

ANativeWindow_acquire它是否与*android/native_window.h`有任何关系?

谢谢!

4

2 回答 2

2

如果您查看 Android 的 git 树,您会看到有几个简单的测试应用程序创建了一个本地窗口并从命令行启动。

点击这里查看测试

关于 Albus 上面一些评论的问题,翻转链的问题是因为您当前的驱动程序只能支持系统中的 1 个翻转链,而这由 SurfaceFlinger 持有,因为这是可以写入本机窗口的实体/帧缓冲区。要解决此问题,您可以通过在 adb shell 中键入“停止”来停止 Android 运行时引擎,然后重新运行您的应用程序。要备份 Android 运行时引擎,请执行“启动”。

于 2011-04-08T13:38:59.703 回答
1

这是从命令行使用 EGL 的示例:

http://jiggawatt.org/badc0de/android/index.html

但是,没有“合法”Android UI Activity 的此类进程将随时被系统杀死,以被视为后台进程。此外,您将无法使用触摸屏或键盘输入,或任何其他需要上下文的东西,例如确定 SD 卡的安装位置等。

于 2011-03-21T15:23:21.857 回答