Go言語のGo MobileでAndroidアプリを開発してみるの記事で、

Go言語でAndroidアプリの環境を整え、

UbuntuでAndroid Debug Bridgeを使ってみるまでの記事で、

Go言語で書いたAndroidアプリを実機かエミュレータで確認出来るところまで準備した。


それを踏まえた上で、

実際のコードを書いてみることにする。


今回は開発環境で動作の確認時にgo run main.goでウィンドウが立ち上がるところまで書いてみる。

コードは慣れの意味を込めて、サンプルコードに合わせてgomobile installコマンドの起動がわかりやすいGOPATH以下に書いてみた。

※/home/saito/go/src/github.com/アカウント名/リポジトリ名/main.goを例にして進める

※/home/saitoはホームディレクトリ


main.goに記述したコードは下記の通り

※コードは下記のURLのページを参考にした

app - GoDoc


package main

import (
	"log"

	"golang.org/x/mobile/app"
	"golang.org/x/mobile/event/lifecycle"
)

func main() {
	app.Main(func(a app.App) {
		for e := range a.Events() {
			switch e := a.Filter(e).(type) {
			case lifecycle.Event:
				log.Print(e)
			}
		}
	})
}

端末を開き、下記のコマンドを実行すると、

cd ~/go/src/github.com/アカウント名/リポジトリ名
go run main.go

go_mobile_start


黒い画面のウィンドウが立ち上がった。

今回書いたコードでウィンドウの立ち上がりまではmain関数内の2行目にあるa.Events()が実行されていれば良いみたいだけれども、

一応サンプルコードに合わせて、

プログラムの実行時に出力されたエラーメッセージを元にコードを少し改変した程度に留めた。


画面を白にしたりと、

最低限のところまで到達出来ていないけれども、


実行したという喜びの元、

Go Mobileを知っていきたいと思う。

Mobile · golang/go Wiki · GitHub