查看: 715|回复: 0

【FirePrime】详解Golang1.5 Android开发环境

[复制链接]
  • TA的每日心情
    奋斗
    2022-9-16 05:52
  • 签到天数: 1368 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2015-9-30 11:34:14 | 显示全部楼层 |阅读模式
    分享到:
    由于很讨厌托管语言,这么多年一直躲着Java,所以也一直没有在Android下开发过东西。不过随着Goolge和Oracle矛盾的日益深化,这个问题似乎有解了,这不,最新的Golang 1.5已经开始支持编写编译Android原生程序了(1.4已经支持了,1.5连iOS也包括了进来,而且和1.4的代码不兼容,所以我就认为它是从1.5开始正式支持)。按捺不住冲动,一定要试一试,哪怕不能用,至少了解一下。
       
        运行环境:FirePrime Android
        开发环境:虚拟机 Lubuntu 14.04 x86
       
        烧写FirePrime的系统和安装虚拟机的Lubuntu不再啰嗦,直接从搭建环境开始。
        首先下载的文件是 Golang 1.5.1 for Linux x86

        没有编译,也不需要安装,直接将其解压到\usr\local下,这是官方推荐的路径,虽然我更喜欢\usr\src。
       

        已经有了bin文件,所以编译的过程可以省略了。
       

        在$HOME下建立一个文件夹,名字自取,用于存放后面下载的代码和编译支持文件。
        同时在这个目录下的.profile文件中添加环境变量。
       

        加了这三句话,名字不重要,只要一致就可以。保存后重启虚拟机系统。
       

        重启之后运行go env查看是否正确,这一步不是必须的,但是之前有个手误而造成了可执行文件找不到,所以建议查看一下,包括cd $GOPATH。
       
        Golang1.5的运行环境设置完毕,下面开始重要的部分了,
        重要的部分,重要的部分,重要的部分要说三次

        按照这两个路径分别建立好文件夹。这是因为golang.org被墙了,后面的东西需要从这里下载但是下不了。而github.com上还有相同的代码,只是路径不一样,这个一般都是可以上的,所以需要做个软连接

        建立好文件夹后,执行这个ln,把github.com上面的东西映射到golang.org下面,这样在编译时就不会找不到文件了
       

        开始下载Golang1.5 Android编译环境的项目,名字叫gomobile。刚才忘说了,go get之前要先安装git,安装都会吧,不重复了。
       

        下载之后cd 进入图中的路径,执行命令go buile,就会生成gomobile这个可执行文件了。后面的编译都靠它了。
       

        为方便使用,可以将它扔进$GOROOT的bin里,这样不管在什么地方都可以执行了。当然也可以再去增加一个环境变量,随意。
       
        下面开始自动搭建编译环境,基于gomobile来完成的

        执行gomobile init -v 会自动下载所有需要的东西
       

        开始执行,连ARM NDK都包括在里面。首先下载,然后解压,全部自动完成,不需要人工干预
       

        整个文件不是很大,根据网速快慢决定时间
       
        完成之后就算是搭建成功了,下载的包里面有例子,进去编译一下试试



        还有其他的例子,可以随意编译。编译之后会出现apk这个文件,直接到Android上安装运行,整个过程没有涉及到任何Java的东西,都是本地原生的,这是我最喜欢的一点。当然,要是需要使用Android系统标准的控件,那就没办法了,目前只能是Java。
       
        运行效果:

         Basic,那个三角可以跟着鼠标走,而且本身颜色变换。帧率显示60。
       


        其他的程序,显示的动画,一丁点卡顿也没有,非常流畅,都是在1920x1080下跑的。
    (完)
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-19 01:49 , Processed in 0.123340 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.