Skip to content

go-android/godroid

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

godroid

Golang 1.4 beta on Android

Thanks for support: Android Arsenal

###QUICK TUTORIAL

  1. Download and install NDK -> From go.mobile:

Pick a home for the standalone NDK toolchain and set an environment variable: NDK_ROOT=$HOME/android/ndk-toolchain

Configure the NDK toolchain:

ndk/build/tools/make-standalone-toolchain.sh --platform=android-9 --install-dir=$NDK_ROOT
  1. Get the Golang 1.4 beta, go to into src dir and type:

     CC_FOR_TARGET=$NDK_CC GOOS=android GOARCH=arm GOARM=7 ./make.bash
    
  2. At some point, you should see gcc erros about 'gcc: error: unrecognized command line option -marm'

  3. Now, tricky part. Beacuse go dosen't know which toolchain to use for android you must trick him to use gcc from ndk toolchain.

Put in you profile bash/zsh:

	PATH=/path_to_installed_ndk_toolchain/arm-linux-androideabi/bin/gcc:$PATH

Dont forget to source your profile!!!

Check with command "which gcc". This will point you to your ndk toolchain default ex.

	"/home/marin/android/ndk-toolchain/arm-linux-androideabi/bin/gcc"

Go get:

go get github.com/MarinX/godroid

install all dependicies and explore the source :)

Folder android_so_lib, contains makefile to build your .so lib (I already included this is AndroidStudio project, so you can check it and run)

You can import the android_studio project and explore/modify/run (support for android 2.3>=).

When you are done, don't forget to uncomment or remove the PATH you set, to use your standard gcc.

@TODO I suggest to install gobind and get familiarize with the tool to generate go-java lib(http://godoc.org/code.google.com/p/go.mobile/cmd/gobind).

I will write more tutorials when I will have time! This is just a quick demo.

Destination for apk: https://www.dropbox.com/s/grm5tyfg0ox7zq1/GoDroid.apk?dl=0

About

Golang 1.4 beta on Android

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 92.8%
  • Go 6.5%
  • Makefile 0.7%