CodePush 用にアプリを設定する
CodePush SDK をインストールし、デプロイキーと CodePush サーバー URL をアプリ設定に追加します。このプロセスは React Native アプリと Expo アプリでは異なります
CodePush SDK をインストールし、デプロイキーと CodePush サーバー URL をアプリ設定に追加します。このプロセスは React Native アプリと Expo アプリでは異なります
React ネイティブアプリ用のコードプッシュの設定
CodePush for React Nativeを使用するには、SDKをインストールしてから、iOSモジュールとAndroidモジュールの両方にCodePushをセットアップする必要があります。
バージョン要件
CodePushNext SDK はリアクトネイティブ 0.76 以降をサポートしています。
-
React ネイティブコードプッシュインストール次へ:
npm install @code-push-next/react-native-code-push
-
用コードプッシュを設定します。最も重要な手順は以下のとおりです iOS セットアップ。
詳細な手順は、SDK の GitHub リポジトリにあります。 iOS。
-
用の CodePush をセットアップします。最も重要な手順は以下のとおりです アンドロイドセットアップ。
詳細な手順は、SDK の GitHub リポジトリにあります。 アンドロイド。
iOS セットアップ
-
バンドル ID が、次の場合に使用したバンドル ID と一致することを確認してください Bitrise でアプリを作成する。使えます
react-native-renameアプリの名前をカスタムバンドル ID に変更するには: リアクション・ネイティブ・リネーム。 -
で
ios/Podfile、次の行を探してくださいplatform :ios、min_ios_version_supported。次のように変更してくださいplatform :ios, 15.5。 -
Update
ios/<projectname>/AppDelegate.swift:-
CodePush ヘッダーのインポートステートメントを追加します。
import CodePush
-
次のコード行を見つけてください。
Bundle.main.url(forResource: "main", withExtension: "jsbundle")
-
これを次の行に置き換えてください。
CodePush.bundleURL()
-
きみの
bundleURLメソッドは以下のようになるはずです。override func bundleURL() -> URL? { #if DEBUG RCTBundleURLProvider.sharedSettings().jsBundleURL(forBundleRoot: "index") #else CodePush.bundleURL() #endif }
-
-
Add the CodePush deployment key and the CodePush Server URL to
ios/<projectname>/Info.plist:デプロイキーは、作成時に取得します Bitriseへのコードプッシュ・デプロイ。
ワークスペーススラッグ
サーバーURLにはBitriseワークスペーススラッグが必要です。 スラグでワークスペースとプロジェクトを識別する。
#The CodePush deployment key <key>CodePushDeploymentKey</key> <string></string> #The CodePush server URL with the Bitrise workspace slug <key>CodePushServerURL</key> <string>https://<workspace-slug>.codepush.bitrise.io</string>
アンドロイドセットアップ
-
末尾に行を追加
android/app/build.gradle追加のビルドタスク定義として:... apply from: "../../node_modules/@code-push-next/react-native-code-push/android/codepush.gradle" ...
-
[更新]
android/app/build.gradle android.defaultConfigセットアップするにはversionCodeとversionName:versionCode System.getenv("APP_VERSION_CODE") != null ? System.getenv("APP_VERSION_CODE").toInteger() : 1 versionName System.getenv("APP_VERSION_NAME") != null ? System.getenv("APP_VERSION_NAME") : "1.0" -
[更新]
android/app/src/main/java/…/MainApplication.ktCodePush を使用するには:パッケージリスト
PackageList は、アプリケーションの存続期間中に一度だけインスタンス化する必要があります。
... // 1. Import the plugin class. import com.microsoft.codepush.react.CodePush class MainApplication : Application(), ReactApplication { override val reactNativeHost: ReactNativeHost = object : DefaultReactNativeHost(this) { override fun getPackages(): List<ReactPackage> = PackageList(this).packages.apply { // Packages that cannot be autolinked yet can be added manually here, for example: // add(MyReactNativePackage()) } // 2. Override the getJSBundleFile method in order to let // the CodePush runtime determine where to get the JS // bundle location from on each app start override fun getJSBundleFile(): String { return CodePush.getJSBundleFile() } }; } -
で
android/app/src/main/res/value/strings.xmlで、CodePush デプロイキーと CodePush サーバー URL を追加します。デプロイキーは、作成時に取得します Bitriseへのコードプッシュ・デプロイ。
ワークスペーススラッグ
サーバーURLにはBitriseワークスペーススラッグが必要です。 スラグでワークスペースとプロジェクトを識別する。
<string name="CodePushDeploymentKey" translatable="false"><CODE_PUSH_DEPLOYMENT_KEY></string> <string name="CodePushServerUrl" translatable="false">https://<workspace-slug>.codepush.bitrise.io</string>
Expo アプリ向けコードプッシュの設定
-
変換
app.jsonにapp.config.jsこれにより、環境変数を使用できるようになります。詳細については、以下をご覧ください 動的設定に関する Expo ドキュメント。
-
を設定
apps ios.bundleIdentifierとandroid.packageでapp.config.js。これらは、使用中の値と一致する必要があります アプリを作成する。 ビットライズで。 -
リアクトネイティブコードプッシュネクストSDKをインストールし、
dotenv、およびexpo-build-propertiesパッケージ:npm install @code-push-next/react-native-code-push dotenv expo-build-properties
-
エキスポコードプッシュプラグインのセットアップ:
-
プラグインをに含める
app.config.js。ワークスペーススラッグ
サーバーURLにはBitriseワークスペーススラッグが必要です。 スラグでワークスペースとプロジェクトを識別する。
plugins: [ [ "@code-push-next/react-native-code-push/expo", // CodePush plugin { ios: { // Use the environment variable for the iOS CodePush Deployment Key CodePushDeploymentKey: IOS_CODE_PUSH_DEPLOYMENT_KEY, CodePushServerURL: "https://<workspace-slug>.codepush.bitrise.io" }, android: { // Use the environment variable for the Android CodePush Deployment Key CodePushDeploymentKey: ANDROID_CODE_PUSH_DEPLOYMENT_KEY, CodePushServerURL: "https://<workspace-slug>.codepush.bitrise.io" } } ], [ "expo-build-properties", { ios: { deploymentTarget: "15.5" } } ] // Add other plugins here if you have more ]
-
-
デプロイキー値をに追加
.envファイル。デプロイキーは次の場合に取得されます CodePush デプロイメントを作成しています。 ビットライズで。ヒント
を追加
.envファイルをあなたの.gitignore鍵を秘密にしておくためだ!# .env file # CodePush Deployment Keys IOS_CODE_PUSH_DEPLOYMENT_KEY="" ANDROID_CODE_PUSH_DEPLOYMENT_KEY=""