安卓go語(yǔ)言編譯器apk,go語(yǔ)言編譯工具

如何Golang開(kāi)發(fā)Android應(yīng)用

如何Golang開(kāi)發(fā)Android應(yīng)用:

目前成都創(chuàng)新互聯(lián)已為超過(guò)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機(jī)、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、新絳網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶(hù)導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶(hù)和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

一丶準(zhǔn)備

1.一臺(tái)Linux 64的機(jī)器

2.一個(gè)帶有AndroidStudioIDE的開(kāi)發(fā)機(jī)器

因?yàn)榄h(huán)境配置實(shí)在復(fù)雜,所以引入的docker。

docker pull codeskyblue/docker-goandroid

docker run --rm -ti codeskyblue/docker-goandroid bash

cd example; echo "view example projects

docker起來(lái)之后,什么就都配置好了,NDK,java,GO的環(huán)境變量了,等等,并且還預(yù)裝了vim,gradle,tmux,git,syncthing,svn

二丶代碼

1.寫(xiě)代碼之前,先約定下目錄結(jié)構(gòu)

go的代碼都放在src/golib下,編譯使用make.bash編譯腳本,看下這個(gè)文件樹(shù)

.

|-- app.iml

|-- build.gradle

|-- libs/armeabi-v7a # go編譯生成的so文件

| ? ? ? ? ? ? ? `-- libgojni.so

|-- main.go_tmpl # 一個(gè)模板文件,先不用管它

|-- make.bash # 編譯腳本,用來(lái)生成.so和Java代碼

`-- src

|-- golib

| ? |-- hi

| ? | ? |-- go_hi#1438;#1438;#1438; # 自動(dòng)生成的代碼

| ? | ? | ? `-- go_hi.go

| ? | ? `-- hi.go # 需要編寫(xiě)的代碼

| ? `-- main.go

`-- main

? ?|-- AndroidManifest.xml

? ?|-- java

? ?| ? |-- go # 自動(dòng)生成的代碼

? ?| ? | ? |-- Go.java

? ?| ? | ? |-- Seq.java

? ?| ? | ? `-- hi

? ?| ? | ? ? ? `-- Hi.java

? ?| ? `-- me/shengxiang/gohello # 主要的邏輯代碼

? ?| ? ? ? ? ? ? ? ? ? ? ?`-- MainActivity.java#1438;#1438;#1438;

? ?`-- res

2.寫(xiě)了一個(gè)例子

git clone

3.編譯下,試試行不行(就算不行問(wèn)題應(yīng)該也不大,因?yàn)榇髥?wèn)題都被消滅了)

cd GoHello/app

./make.bash

../gradlew build

4.一切順利的話(huà)在build/outputs/apk下應(yīng)該可以看到app-debug.apk這個(gè)文件。

編譯好的放到qiniu上了,可以點(diǎn)擊下載看看

下面可以嘗試改改

打開(kāi)hi.go這個(gè)文件

hi.go的內(nèi)容,比較簡(jiǎn)單,寫(xiě)Go代碼主要就是這部分

// Package hi provides a function for saying hello.

package hi

import "fmt"

func Hello(name string) {

fmt.Printf("Hello, %s!\n", name)

return "(Go)World"

}

5.文件末尾添加下面這行代碼

func Welcome(name string) string {

return fmt.Sprintf("Welcome %s to the go world", name)

}

使用./make.bash重新編譯下

6.打開(kāi)MainActivity.java?修改下OnClickListener事件

button.setOnClickListener(new View.OnClickListener() {

? ?@Override

? ?public void onClick(View v) {

? ? ? ?String message = Hi.Welcome("yourname");

? ? ? ?Toast.makeText(MainActivity.this, message, Toast.LENGTH_LONG).show();

? ?}

});

編譯運(yùn)行下,把生成的apk安裝到手機(jī)上試試。

如何用Go語(yǔ)言開(kāi)發(fā)Android應(yīng)用

Go 語(yǔ)言是一個(gè)試圖結(jié)合動(dòng)態(tài)類(lèi)型和靜態(tài)類(lèi)型,編譯效率和安全性以及語(yǔ)言的易用性等眾多特性與一體的一種嘗試。他的另一個(gè)目標(biāo)是支持現(xiàn)代的基于網(wǎng)絡(luò)的、基于多核的計(jì)算。最后,Go 還是非??斓?,他可以在單個(gè)計(jì)算機(jī)上僅僅花費(fèi)幾秒時(shí)間構(gòu)建一個(gè)龐大的應(yīng)用程序。使用GO語(yǔ)言開(kāi)發(fā)android語(yǔ)言步驟如下:

1. 下載安裝Go語(yǔ)言(版本1.5+)

Golang鏈接

回到頂部

2. 下載安裝 gomobile

下載

$ go get golang.org/x/mobile/cmd/gomobile

安裝(需要等待幾分鐘)

gomobile init

回到頂部

3. Golang開(kāi)發(fā)手機(jī)應(yīng)用有兩種方式

a. 原生應(yīng)用開(kāi)發(fā)

$ go get -d golang.org/x/mobile/example/basic

主要應(yīng)用領(lǐng)域:

應(yīng)用控制管理與配置

OpenGL ES 2 綁定

Asset 管理

Event 管理

試驗(yàn)中的包,含有OpenAL 綁定、音頻、字體、圖形以及運(yùn)動(dòng)傳感器

Android開(kāi)發(fā)

$ gomobile build -target=android golang.org/x/mobile/example/basic

此命令會(huì)生成名為basic的apk安裝包

$ gomobile install golang.org/x/mobile/example/basic

此命令將安裝apk包到已連接的android設(shè)備

在安卓平臺(tái)上安裝 GCC 的方法?

android上安裝GCC的步驟:

1、準(zhǔn)備文件:Terminal IDE.apk和GCC源文件。

2、解壓整個(gè)ZIP文件,并先將Terminal.apk文件安裝至手機(jī)中,然后把GCC整個(gè)文件一起放置到data/data/com.spartacusrex.spartacuside/files/system中。

3、修改data/data/com.spartacusrex.spartacuside/files/目錄下的.bashrc文件,添加以下代碼:

export CPLUS_INCLUDE_PATH=$IDESYSTEM/gcc/arm-linux-androideabi/c++/include:$CPLUS_INCLUDE_PATH ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

export C_INCLUDE_PATH=$IDESYSTEM/gcc/arm-linux-androideabi/include:$C_INCLUDE_PATH ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

export PATH=$IDESYSTEM/gcc/bin:$PATH

4、將gcc/bin下的文件改一下名,arm-linux-androideabi-g++改為g++,arm-linux-androideabi-gcc則改為gcc。

5、完成后重啟IDE即可使用GCC。

gcc(GNU編譯器套件):

GNU編譯器套件(GNU Compiler Collection)包括C、C++、Objective-C、Fortran、Java、Ada和Go語(yǔ)言的前端,也包括了這些語(yǔ)言的庫(kù)(如libstdc++、libgcj等等)。GCC的初衷是為GNU操作系統(tǒng)專(zhuān)門(mén)編寫(xiě)的一款編譯器。GNU系統(tǒng)是徹底的自由軟件。此處,“自由”的含義是它尊重用戶(hù)的自由。

創(chuàng)作背景:

GCC(GNU Compiler Collection,GNU編譯器套件),是由 GNU 開(kāi)發(fā)的編程語(yǔ)言編譯器。它是以GPL許可證所發(fā)行的自由軟件,也是 GNU計(jì)劃的關(guān)鍵部分。GCC原本作為GNU操作系統(tǒng)的官方編譯器,現(xiàn)已被大多數(shù)類(lèi)Unix操作系統(tǒng)(如Linux、BSD、Mac OS X等)采納為標(biāo)準(zhǔn)的編譯器,GCC同樣適用于微軟的Windows。[2]??GCC是自由軟件過(guò)程發(fā)展中的著名例子,由自由軟件基金會(huì)以GPL協(xié)議發(fā)布。

GCC 原名為 GNU C 語(yǔ)言編譯器(GNU C Compiler),因?yàn)樗局荒芴幚?C語(yǔ)言。GCC 很快地?cái)U(kuò)展,變得可處理C++。后來(lái)又?jǐn)U展能夠支持更多編程語(yǔ)言,如Fortran、Pascal、Objective-C、Java、Ada、Go以及各類(lèi)處理器架構(gòu)上的匯編語(yǔ)言等,所以改名GNU編譯器套件(GNU Compiler Collection)。

python能開(kāi)發(fā)出exe電腦軟件嗎?golang編程可開(kāi)發(fā)出APK安卓應(yīng)用?不用安裝的程序叫什么

python可以開(kāi)發(fā)出Windows平臺(tái)的EXE程序,需要打包即可,但是打包后exe軟件本身有點(diǎn)大。

安卓go桌面制作工具無(wú)法導(dǎo)出APK。java jdk和環(huán)境變量設(shè)置都是按教程做的。但我主題制作好后導(dǎo)

朋友幫我裝的91熊貓桌面,主題還狠好看?,F(xiàn)在下主題很方便,直接在主題商城里面下載安裝就好

分享名稱(chēng):安卓go語(yǔ)言編譯器apk,go語(yǔ)言編譯工具
分享網(wǎng)址:http://muchs.cn/article42/hcpsec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、企業(yè)網(wǎng)站制作、域名注冊(cè)、關(guān)鍵詞優(yōu)化、搜索引擎優(yōu)化、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)