Matcha - 用 Go 来写 iOS 和 Android 应用的开发框架

2,946 阅读1分钟
原文链接: github.com

gomatcha.io

Matcha is in early development! There are many rough edges and APIs may still change. Please file issues for any bugs you find.

What is Matcha?

Matcha is a package for building iOS and Android applications and frameworks in Go. Matcha provides a UI component library similar to ReactNative and exposes bindings to Objective-C and Java code through reflection. The library also provides Go APIs for common app tasks.

Examples

settings-example insta-example todo-example

Installation

Matcha requires the following components to be installed. Unfortunately only macOS is supported at this time.

  • Go 1.8
  • Xcode 8.3
  • Android Studio 2.3
  • NDK
  • Protobuf 3.3 - ObjC and Java

To start, fetch the project and install the matcha command.

go get gomatcha.io/matcha/...

We build the Go standard library for iOS and Android with the following command. This may take awhile. The output is installed at $GOPATH/pkg/matcha. If your path doesn't contain $GOPATH/bin, you may need to replace these calls with $GOPATH/bin/matcha.

matcha init

Now build the example project. The output is installed at $GOPATH/src/gomatcha.io/matcha/ios/MatchaBridge/MatchaBridge/MatchaBridge.a and $GOPATH/src/gomatcha.io/matcha/android/matchabridge.aar.

matcha build gomatcha.io/matcha/examples

We can now open the sample iOS project.

open $GOPATH/src/gomatcha.io/matcha/examples/ios-app/SampleApp.xcworkspace

Set the Development Team in Xcode under General > Signing and select SampleApp in the target dropdown in the upper right. Then run the App!

For Android simply open the sample Android Studio project and hit run!

open -a /Applications/Android\ Studio.app $GOPATH/src/gomatcha.io/matcha/examples/android-app/SampleApp

You can try out other examples by replacing "gomatcha.io/matcha/examples/settings New" in AppDelegate.m and MainActivity.java with the name of the example.

Try it out!

Contact us