6

是否可以使用 Go 来构建 Android 游戏?我不喜欢主题行中提到的技术。我知道有些人在 Go 中构建了一些 Android 程序,但他们可能是无头的。

4

2 回答 2

1

不,现在不可能。Go 和 C 程序可以通过 cgo 进行互操作。但在这种情况下,Go 程序必须在将控制权传递给程序的基于 C 的部分之前启动并初始化其运行时。

在 Android 中使用 NDK 时,Dalvik 虚拟机通过 dlopen 调用您的 C 代码。因此 Go 运行时将没有机会进行自我初始化。

于 2012-08-28T14:38:21.770 回答
-1

如果您想要非无头应用程序,我的建议是使用 cgo 作为 GUI。这听起来违反直觉,但如果 NDK 支持 C android gui 库,那么使用这些调用编写 GUI 可能是最简单的。当然,您不必在 C 中编写所有逻辑。您可以简单地为每个 GUI 调用编写 cgo 包装器,然后在 go 中编写 GUI,除了每个 gui 调用都将通过 cgo 进行转换。

于 2012-08-14T00:59:32.337 回答