mirror of https://github.com/golang/go.git
Android emulator builders are soon to join the trybot set. To avoid flaky runs, work around a longstanding adb bug where concurrent adb commands sometimes fail. I haven't seen the problem on actual devices until recently. It seems that the recently added "adb wait-for-device" can introduce flakyness with errors such as: adb: error: failed to get feature set: protocol fault (couldn't read status): Connection reset by peer Instead of working around that, give up and serialize use of adb everywhere. Fixes #23795 Updates #23824 Change-Id: If347c9981fa32ff8a1e14b7454f122ef682450a6 Reviewed-on: https://go-review.googlesource.com/c/163625 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> |
||
|---|---|---|
| .. | ||
| README | ||
| go_android_exec.go | ||
README
Android ======= For details on developing Go for Android, see the documentation in the mobile subrepository: https://github.com/golang/mobile To run the standard library tests, enable Cgo and use an appropriate C compiler from the Android NDK. For example, CGO_ENABLED=1 \ GOOS=android \ GOARCH=arm64 \ CC=$NDK/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android21-clang \ ./all.bash To run tests on the Android device, add the bin directory to PATH so the go tool can find the go_android_$GOARCH_exec wrapper generated by make.bash. For example, to run the go1 benchmarks export PATH=$GOROOT/bin:$PATH cd $GOROOT/test/bench/go1/ GOOS=android GOARCH=arm64 go test -bench=. -count=N -timeout=T