从围棋
回答
恐怕这是几乎不可能的时刻。在“Meet the Go Team”I/O会议中,来自Go团队的人表示他们没有计划为Go增加Android支持。
我们现在只能是ARM架构的编译器。不幸的是,这对于真正的Android应用来说几乎没有用,尽管这些程序可以从Android设备上的命令行启动。
大部分的Android框架是用Java编写的,所以与它交互您的代码应该被编译成*。所以libary,将通过JNI接口加载并调用。目前的Go编译器不可能(gc,不确定gccgo)。
也许你会能够使绑定到Android NDK API与cgo
,这将使因为API 9级(安卓2.3)
UPD您创造转到应用程序:您现在可以使用JNI从Go使用golang.org/x/mobile包自动创建java绑定。在Go 1.4中它仍然是实验性的,但有计划将它包含到Go 1.5发行版中。该软件包还为GL,音频和用户输入提供了绑定(希望他们还可以添加iOS支持,并且有一天可以兼容Android和iOS)。无论如何,这个软件包主要面向在Go上编写游戏,而不是使用Go作为Android上Java的替代品。
步骤1:使用Golang创建一个独立于平台的GUI库,该库使用OpenGL进行绘制,并使用智能事件和数据绑定系统来编写应用程序。使用OpenGL的任何软件都将具有或多或少的便携性。基本上,在Golang重写Kivy。
第2步:使用类似于PyJNIus(也是Kivy项目)的Java类创建内省/反射基于包装器。
第3步:很多更艰苦的工作,因为有很多事情要做去Kivy
水平第4步:利润
超越顶端,所以我理解你的答案是“不,目前不可能”。 :) – 2013-08-16 19:01:29
是的,我不想成为一个氛围杀手,但它只是需要时间才能到达那里。我非常喜欢使用Golang而不是Java(或Python)的想法。在Python获得某种类型推理编译器给LLVM的IF或类似的东西之前,我宁愿不承担如此巨大的速度惩罚。 – user823629 2013-08-21 16:39:53
看看我的回答Android App from Go programming language。 goandroid项目允许您在Go中通过NDK创建Android应用程序。
(免责声明:我goandroid的作者)
编辑:由于在评论中提到,进入1.5增加了对纯转到Android应用或如Java的混合官方支持而归。预计iOS也会及时抵达最终的1.5版本。有关更多详细信息,请参阅https://github.com/golang/mobile。
goandroid已弃用,请访问https://github.com/golang/mobile获取官方支持。 – 2015-05-10 02:50:48
GO 1.4 doc说,“去1.4可以建立运行Android操作系统的ARM处理器的二进制文件,也可以建立一个可以通过Android应用程序在移动subrepository使用支持包加载的.so库”
“golang.org/x/mobile/app”库中有package app选项,它允许您为Android(最终iOS)编写应用程序。
- 1. 围棋
- 2. 围棋
- 3. 围棋
- 4. 围棋
- 5. 围棋
- 6. 围棋
- 7. Accesing的MongoDB从围棋
- 8. strings.Split围棋
- 9. “网”在围棋
- 10. 与围棋
- 11. 围棋在JSON
- 12. 实现围棋
- 13. 对于围棋
- 14. 错误围棋
- 15. 在围棋
- 16. 解组围棋
- 17. 拆封围棋
- 18. unsafe.Pointer为[]围棋
- 19. 解析XML围棋
- 20. 围棋“这个” -keyword
- 21. 不能在围棋
- 22. 追加到围棋
- 23. ListenSocket ClientSocket的围棋
- 24. 围棋从AWS根到EC2用户
- 25. 围棋找不到包
- 26. 安装围棋语言
- 27. 围棋的WebSockets数据gopherjs
- 28. 楼宇围棋应用
- 29. 确定空白围棋
- 30. 围棋 - 如何使用http.NewRequest
至少这个网络是否可以在本地使用?我的意思是,“net”或“net/http”Go软件包是否可以在Android手机上“开箱即用”? – 2012-07-15 23:18:37
@SebastiánGrignoli是的,这应该是可能的,一些现有的项目做到这一点:https://github.com/huin/chunkymonkey/blob/master/docs/android-server.md – zserge 2012-07-16 16:53:12
这个答案是oudated。 https://github.com/golang/mobile项目包含对Go中Android应用程序的支持。 – 2015-05-10 08:03:47