From e4c2fa6d0ca8dd7c6e83ffb8c13e7baf43fdb3e8 Mon Sep 17 00:00:00 2001 From: Vsevolod Kaganovych Date: Tue, 4 Jan 2022 20:42:11 +0200 Subject: [PATCH] mobile: improved documentation for building Android [skip ci] --- docs/release-notes/release-notes-0.15.0.md | 1 + mobile/README.md | 131 +++++++++++++++++++-- mobile/docs/proto_folder.png | Bin 0 -> 21726 bytes mobile/docs/separate_gradle_module.png | Bin 0 -> 23401 bytes 4 files changed, 124 insertions(+), 8 deletions(-) create mode 100644 mobile/docs/proto_folder.png create mode 100644 mobile/docs/separate_gradle_module.png diff --git a/docs/release-notes/release-notes-0.15.0.md b/docs/release-notes/release-notes-0.15.0.md index 8673f2892..53421658e 100644 --- a/docs/release-notes/release-notes-0.15.0.md +++ b/docs/release-notes/release-notes-0.15.0.md @@ -58,4 +58,5 @@ * Joost Jager * Liviu * Torkel Rogstad +* Vsevolod Kaganovych * Yong Yu diff --git a/mobile/README.md b/mobile/README.md index 068e5329c..22bb80e89 100644 --- a/mobile/README.md +++ b/mobile/README.md @@ -2,6 +2,18 @@ ## Prerequisites +### Go language + +- [Install](https://github.com/lightningnetwork/lnd/blob/master/docs/INSTALL.md#preliminaries-for-installing-from-source) `GO` language. +- Provide `$GOPATH` to `.zshrc` or `.bash_profile` files. + +```shell +export GOPATH=$HOME/go +export PATH=$PATH:$GOPATH/bin +``` + +Or any path you want it to be in. + ### Docker - Install and run [Docker](https://www.docker.com/products/docker-desktop). @@ -16,17 +28,21 @@ ### Go mobile -Install [gomobile](https://github.com/golang/go/wiki/Mobile) and initialize it: +- Install [gomobile](https://github.com/golang/go/wiki/Mobile): ```shell ⛰ go install golang.org/x/mobile/cmd/gomobile@latest -⛰ gomobile init +``` + +- Install `gobind` + +```shell +⛰ go install golang.org/x/mobile/cmd/gobind@latest ``` ## Building the libraries -Note that `gomobile` only supports building projects from `GOPATH` at this -point. So, before continuing, be sure to be in the `src` folder: +Note that `gomobile` only supports building projects from `GOPATH` at this point. So, before continuing, be sure to be in the `src` folder: ```shell ⛰ cd $GOPATH/src/github.com/lightningnetwork/lnd @@ -38,6 +54,26 @@ To checkout the latest tagged release of lnd, run ⛰ git checkout $(git describe --tags --abbrev=0) ``` +Or, the second option: just clone the project and checkout to any branch/tag (pay attention to the dot in the end). + +```shell +⛰ git clone https://github.com/lightningnetwork/lnd . +``` + +#### For Android: + +Move to the folder or create one: + +```shell +⛰ cd $GOPATH/src/golang.org/x +``` + +After that clone the goland mobile repo + +```shell +⛰ git clone https://github.com/golang/mobile +``` + ### Building `lnd` for iOS ```shell @@ -46,6 +82,8 @@ To checkout the latest tagged release of lnd, run ### Building `lnd` for Android +Go to `$GOPATH/src/github.com/lightningnetwork/lnd` and run the command below (make sure that the Docker engine is running): + ```shell ⛰ make android ``` @@ -114,22 +152,99 @@ to your project to support the generated code. ### Android +#### First option: + In order to generate protobuf definitions for Android, add `--java_out=.` to the first `protoc` invocation found in [ `gen_protos.sh` ](../lnrpc/gen_protos.sh). Then, run `make rpc`. + +#### Second option (preferable): + +- You have to install the profobuf plugin to your Android application. +Please, follow this link https://github.com/google/protobuf-gradle-plugin. +- Add this line to your `app build.gradle` file. +```shell +classpath "com.google.protobuf:protobuf-gradle-plugin:0.8.17" +``` +- Create a `proto` folder under the `main` folder. + +![proto_folder](docs/proto_folder.png) + +- Add `aar` file to libs folder. + +- After that add these lines to your `module's` `build.gradle` file: + +```shell +plugins { + id "com.google.protobuf" +} + +android { + sourceSets { + main { + proto { + + } + } + } +} + +dependencies { + implementation fileTree(dir: "libs", include: ["*.jar"]) + implementation "com.google.protobuf:protobuf-javalite:${rootProject.ext.javalite_version}" +} + +protobuf { + protoc { + artifact = "com.google.protobuf:protoc:${rootProject.ext.protoc_version}" + } + generateProtoTasks { + all().each { task -> + task.builtins { + java { + option "lite" + } + } + } + } +} +``` +- Then, copy all the proto files from `lnd/lnrpc` to your `proto` folder, saving the structure. +- Build the project and wait until you see the generated Java proto files in the `build` folder. + +#### Note: + +If Android Studio tells you that the `aar` file cannot be included into the `app-bundle`, this is a workaround: + +1. Create a separate gradle module +2. Remove everything from there and leave only `aar` and `build.gradle`. + +![separate_gradle_module](docs/separate_gradle_module.png) + +3. Gradle file should countain only these lines: + +```shell +configurations.maybeCreate("default") +artifacts.add("default", file('Lndmobile.aar')) +``` + +4. In `dependencies` add this line instead of depending on `libs` folder: +```shell +implementation project(":lndmobile", { "default" }) +``` + + ## Options -Similar to lnd, subservers can be conditionally compiled with the build by -setting the tags argument: +Similar to lnd, subservers can be conditionally compiled with the build by setting the tags argument: ```shell ⛰ make ios ``` -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: +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: ```shell ⛰ make ios prefix=1 diff --git a/mobile/docs/proto_folder.png b/mobile/docs/proto_folder.png new file mode 100644 index 0000000000000000000000000000000000000000..43f0e15701bf238e9264a3c4676973c11257c6ad GIT binary patch literal 21726 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 T0t@huawl%;7+x>eazOkK>&{4~ literal 0 HcmV?d00001