ベースをカスタマイズする必要がある理由の 1 つ
1. ベースは実際にアプリになっており、新しく開発したページを携帯電話上で直接表示して効果を確認できます。
2. デフォルトのベースは、uniapp によってパッケージ化されたベース アプリです。これでページをデバッグできます。
3. カスタム ベースは主にネイティブ プラグインの呼び出しを実現するために使用されます。カスタム ベースは HBuilder/HBuilderX でアプリケーションを開発するために使用でき、実行中のエフェクトは携帯電話/エミュレータ上で確認できます。
2 ベースのカスタマイズ方法
2.1 オフライン パッケージの appkey 構成が正しいことを確認します。前の記事では、appkey を生成する方法、ネイティブ Android プロジェクトの appkey を構成する方法、および Android プロジェクト アプリの AndroidManifest.xml に appkey ノードを追加する方法を示しました。
<meta-data
android:name="dcloud_appkey"
android:value="開発者は署名を申請するには https://dev.dcloud.net.cn/ にログインする必要があります" />
2.2 debug="true" および syncDebug="true" を構成します。Android プロジェクト アプリのアセットで dcloud_control.xml を見つけて、デバッグ構成を追加します。
2.3 debug-server-release.aar を追加します。オフライン uni-sdk 内の aar をコピーし、Android プロジェクトのライブラリに置きます。
2.4 build.gradle の versionCode と versionName を変更する: このステップは非常に重要であり、初心者は見落としがちです。
2.5 android_debug.apk のパッケージ化: 構成に変更がある場合は、最初に同じプロジェクトをクリアすることをお勧めします (Build-Clean Project)。
AndroidStudio 列の [実行] ボタンをクリックすると、ビルド ファイル内に android_debug.apk が見つかります。
2.6 デバッグ用のカスタム ベースとして android_debug.apk パッケージを使用します。apk を uni プロジェクトの unpackage-debug ディレクトリにコピーします。
3つのユニカスタムベースのデバッグ
3.1 クリックしてコラムを実行 - 携帯電話またはシミュレーター - Android アプリベース. 新旧のエディターは異なる場合があります。
3.2 この時点で、カスタム ベースを見つけるように求められます。これは名前が間違っているためです。先ほどの APK 名を android_debug.apk に変更する必要があります。
3.3 この時点で、実行中にカスタムベースを見つけることができます
3.5 コンソールにはカスタム ベースが正常にインストールされたことが表示され、ログ情報を uni コンソールと androidStudio コンソールに同時に出力できるようになります。
3.6 しかし、実行後にクラッシュし、リソースの同期が失敗したことが示されます。
3.7 カスタム ベースのオフライン SDK パッケージ化には 2 つの依存関係が必要な場合があることがわかり、それらを Android プロジェクトに追加し、再コンパイルしてデバッグ パッケージを生成します。
実装「com.squareup.okhttp3:okhttp:4.9.0」
実装「com.squareup.okio:okio:2.9.0」
3.8 カスタム ベースを再度実行します。今回はファイルの同期が成功し、正常に実行できます。
4. もちろん、uni を使用して android_debug.apk ベースを直接作成することもできます。
4.1 携帯電話で実行するかシミュレータで実行するかを選択 - カスタム デバッグ ベースを作成する
4.2 従来のパッケージ用に以前に生成された証明書を構成する
4.3 コンソールが android_debug.apk を正常に作成するまで待ちます。その後、ベースを使用できるようになります。
4.4 モバイル ファイルの同期が完了したことがコンソールに表示されたら、成功したことを意味します。
5つのまとめ
カスタムベースは実際にはネイティブアプリを実行するための環境であり、ベースは android_debug.apk であり、apk を生成して uni のデバッグ ディレクトリにコピーするだけです。