Building mobile libraries
Install the dependencies for generating protobuf definitions as stated in lnrpc docs
Follow gomobile in order to install
gomobile and dependencies.
Remember to run
gomobile init (otherwise the
lnd build might just hang).
gomobile only supports building projects from
GOPATH at this
go get -u -v github.com/lightninglabs/falafel
lnd for iOS
lnd for Android
make mobile will build both iOS and Android libs.
After the build has succeeded, the libraries will be found in
mobile/build/android/Lndmobile.aar. Reference your platforms' SDK
documentation for how to add the library to your project.
Generating proto definitions for your language.
In order to call the methods in the generated library, the serialized proto for the given RPC call must be provided. Similarly, the response will be a serialized proto.
In order to generate protobuf definitions for your language of choice, add the
proto plugin to the
protoc invocations found in
gen_protos.sh. For instance to generate protos for
--swift_out=. and run
Similar to lnd, subservers can be conditionally compiled with the build by setting the tags argument:
make ios tags="routerrpc"
To support subservers that have APIs with name conflicts, pass the "prefix" flag. This will add the subserver name as a prefix to each method name:
make ios tags="routerrpc" prefix=1