Gradle を実行している場合のみ、欠落している
jniLibs は生成されません。初めてビルドする場合は、最初にネイティブ ビルドを完了してください。 環境要件
現在のアプリケーションは
arm64-v8a のみをビルドし、対応する Rust ターゲットは aarch64-linux-android です。
倉庫を準備する
1
ソースコードを取得する
2
Android SDKを構成する
API 37、NDK 30.0.14904198、および CMake 3.22.1 をインストールし、リポジトリのルート ディレクトリに NDK は、
local.properties を作成します。gradle.properties の android.ndkVersion に従って自動的に検索します。3
Go と Rust の準備
.github/patch/ から go env GOROOT のパッチを適用する必要もあります。 CI は、ネイティブ コンポーネントをビルドする前にこのステップを自動的に実行します。Git Bash または WSL で実行します。4
同期ミホモ
カーネルチャネルを選択します。デフォルトではアルファが使用されます。メタを使用することもできます。
ネイティブコンポーネントを構築する
完全なビルド
完全なビルドでは、すべてのネイティブ ライブラリが生成され、地理データがダウンロードされます。
ネイティブ デバッグでは、現在の ABI のみがビルドされます。
jniLibs/arm64-v8a/ には次の内容が含まれるはずです。
地理データは
build/generated/assets/geo/ にあります。
APK をビルドする
###デバッグ デバッグは、ローカルのインストールとデバッグに適しています。リリース
解放すると、圧縮とリソースの縮小が可能になります。地理データのバリアント
どちらの亜種も同じアプリケーション コードとカーネルを使用します。唯一の違いは、Geo リソースが APK にパッケージ化されているかどうかです。
APK は次の場所に出力します。
YumeBox-external.apk または YumeBox-builtin.apk が生成されます。実際のファイル名は出力ディレクトリに基づいています。
リリース署名
ローカル検証を正式な署名で構成する必要はありません。 APK を公開するには、ウェアハウスのルート ディレクトリにrelease.keystore と signing.properties が必要です。
release.keystore または signing.properties は送信しないでください。 CI ビルド
CI は
arm64-v8a を使用し、build.number、build.hash、および build.branch を介してビルド バージョン情報を書き込みます。
インストールを確認する
app/build/outputs/apk/ で実際の製品を確認してください。
よくある質問
その他のビルド エラーについては、FAQ を参照してください。
