Over-the-Air (OTA)アップデートは、App Store、Google Play、またはその他のデプロイメントプラットフォームでの新しいリリースを必要とせずに、モバイルおよびWebアプリケーションに翻訳アップデートを納品するための柔軟な方法を提供します。このアプローチは、遅延や手動プロセスを削減することで、継続的なローカライズとアジャイル開発ワークフローをサポートします。
Phrase StringsのOTA機能は、iOS、Android、React Native、Flutter、i18next、およびRailsプラットフォームと統合されます。テキストラベルのアップデートは、モバイルアプリに即座にプッシュされます。
更新された設定を適用するためには、新しいリリースを作成する必要があります。リリースに含まれるすべてのコンテンツは、Phrase Stringsで利用可能である必要があり、そこからアプリケーションに直接翻訳がストリーミングされます。コンテンツが存在しない場合、翻訳は納品されません。
モバイルアプリケーションの場合、OTAには、実行時にPhrase Stringsから翻訳を取得するために、関連するSoftware Development Kit (SDK)をアプリケーションに統合する必要があります。
ヒント
配布、リリース、およびAPI参考資料の詳細については、Developer Hubを参照してください。
iOS、Android、React Native、またはFlutter SDKを実装したアプリケーションをデバイスで初めて起動する際、一意でランダムなデバイスIDが生成されます。このIDは、特定の期間におけるアクティブユーザーを追跡します。他の形式や追跡手段には使用されず、ユーザーやデバイスの情報は含まれません。
OTAリクエストの数と月間アクティブユーザー数(MAU)は、選択した料金プランに応じて制限されます。
MAUとは、翻訳がリクエストされた一意のデバイスの数です。各デバイスにはランダムなIDが割り当てられます。MAUは、過去30日間に割り当てられた一意のIDの数に基づいて計算されます。Phraseサーバーとのすべてのやり取りは、リクエストとみなされます。
OTAリクエストで送信されるデータ
SDKは、アップデートを確認するためにOTAサービスと通信し、各リクエストに以下の詳細を含めます。
-
デバイスID(例:"F3AFCB10-80A2-84CB-94C0-27F5EF58876D".このアプリ固有のものであり、特定のデバイスを追跡することはできません。)
-
アプリのバージョン(例:"1.2.0")
-
翻訳ファイルの最終更新(例:"1542187679")
-
SDKのバージョン(例:"1.0.0")
-
ロケール(例:「de-DE」)
-
ファイル形式(例:「Strings」)
-
クライアント(例:「ios」)
-
配信 ID(配信のID)
-
環境シークレット(開発環境と本番環境を区別するため)
SDKで使用されるドメイン:
EUデータセンター
-
ota.eu.phrase.com
-
cdn.eu.phrase.com
-
ota.phraseapp.com
-
cdn.phraseapp.com
USデータセンター
-
ota.us.phrase.com
-
cdn.us.phrase.com
Phrase OTA SDKは、OTA APIが利用できない場合でもアプリが機能し続けるように設計されています。そのような場合、SDKはデバイスに保存されている最後に正常に取得されたStrings、またはアプリパッケージに含まれているバンドルされたStringsにフォールバックします。これにより、エンドユーザーに対するエラーやStringsの欠落を防ぎます。信頼性の高いフォールバックを保証するために、バンドルされたStringsはアプリリリースのたびに最新の状態に保つ必要があります。
配信とは、特定のプラットフォームやプロジェクトに対して、OTA更新をどのように、どこに配信するかを定義する構成済みのセットアップです。
ターゲットプラットフォームは配信内で定義されます。
-
iOS
-
Android
-
Flutter
-
i18next
-
Rails
複数の配信が可能ですが、理想的には1プロジェクトにつき1つの配信です。iOSとAndroidで配信を使用する場合、2つのファイル形式のプレースホルダーは自動的に変換されます。
フォールバック
配信が接続されているプロジェクトの言語設定で言語フォールバックが設定されている場合、要求された言語が存在するもののキーが翻訳されていないと、選択された言語のStringsが表示されます。
国別の言語(例: en-GB)が使用されているもののリリースに含まれていない場合、その言語の標準バージョン(例: en)がプロジェクトに存在すれば、システムはそのバージョンにフォールバックできます。要求された言語が全く見つからない場合は、代わりにプロジェクトのデフォルトロケールを提供できます。
フォールバックはリンクされたキーでは機能しません。
配信を作成する
配信を作成するには、以下の手順に従ってください。
-
ページのボックスから、設定、またはすでに設定が存在する場合はその数をクリックします。
ページが開き、既存の設定が表示されます。
-
新規配信をクリックします。ウィンドウが開きます。
-
全般タブで、、配信に関連付ける、必要な、および必要なを指定します。
-
Android配信の場合は、Androidタブをクリックして、必要に応じてHTMLタグを含む翻訳をCDATAで囲むファイル形式オプションを選択します。
-
配信に関連付けるプロジェクトを選択すると、スケジュールタブが使用可能になります。必要に応じて、このタブを使用して配信のOTAスケジュールリリースを設定します。
-
-
フォールバック言語タブで、必要に応じて配信固有のフォールバック設定を選択します。フォールバックオプションは、一覧に表示されている順に優先されます。
-
必要に応じて、翻訳タブをクリックして、最新のレビュー済翻訳バージョンを使用するオプションを選択します。このオプションは、高度なレビューワークフローを使用する場合にのみ有効にします。
-
保存をクリックします。
配信の詳細は、SDKで必要なIDとともに表示されます。詳細は、ページから配信をクリックすることで再表示できます。
翻訳を更新するには、配信内で新しいリリースを作成します。プロジェクトの現在の状態がエクスポートされ、接続されたクライアントが利用できるようになります。
リリースを作成するには、以下の手順に従います。
-
Over the Airページで、必要な配信の横にある追加をクリックします。
ウィンドウが開きます。
-
、必要な、、、およびを入力します。
配信の言語一覧にまだ追加されていない言語は、選択されていない状態で表示され、選択できません。今後のリリースで選択できるように、必要な言語を配信に追加します。
リリース作成時に言語が手動で選択されていない場合、配信で設定されているすべての言語がデフォルトでリリースに含まれます。
必要に応じてタグを入力し、特定のタグが付いたキーのみをリリースに含めます。リリースにタグフィルタを追加すると、そのタグが付いたキーのみが含まれます。タグが付いていないキーはリリースから完全に除外され、接続されたアプリはそれらのキーに対して、コードベースにローカルでバンドルされている静的翻訳ファイルにフォールバックします。タグフィルタはブランチ機能とは独立して動作します。ブランチ機能が有効な場合は、ブランチと関連するタグを選択します。ブランチ機能が有効でない場合は、関連するタグのみを選択します。
-
保存をクリックします。
リリースが配信詳細ページの下部にある一覧に追加されます。
ディストリビューションをリリースするための定期的なスケジュールを設定するには、以下の手順に従います。
-
ページから、必要なディストリビューションの横にある歯車アイコン
をクリックします。
ウィンドウが表示されます。
-
リリースのスケジュールタブを選択し、をクリックします。
リリーススケジューリングのオプションが表示されます。
備考
スケジューリングオプションは、新しいディストリビューションの作成時にも利用できます。
-
ドロップダウンから、利用可能なオプションのいずれかを選択してリリース頻度を選択します。
-
-
スケジュールされたリリースに必要な曜日を選択します。
-
-
時刻と関連するを指定します。
-
必要に応じて、スケジュールされたリリースの、、を選択します。
-
フィールドは、プロジェクトでブランチ機能が有効になっている場合にのみ表示されます。ブランチを選択すると、ロケールと言語の一覧が更新されます。
-
-
オプションで、およびフィールドにアプリケーションのバージョンを指定します。
すべてのアプリバージョンにスケジュールリリースを適用する場合は、空白のままにします。
-
保存をクリックします。
ディストリビューションがリリーススケジュール情報で更新されます。
スケジュールを無効にするとディストリビューションの自動リリースは停止しますが、構成された設定は保存されます。
備考
Strings UIには、OTAを一時停止または一時的に無効にするオプションはありません。アプリによる翻訳の取得を停止するには、アプリのOTA設定からディストリビューションIDを削除します。OTAを再開するにはIDを復元します。最終手段として、ディストリビューションを削除して新しく作成します。
適切なモバイルSDKまたはWebライブラリを統合することで、ワンクリックで翻訳を更新できるだけでなく、使用状況を測定するためのメトリクスも提供されます。モバイルSDKおよびWebライブラリのレポートは、アクティブなアプリユーザーとそのアプリの言語に関する貴重な洞察を提供します。このレポートセットは各配信で利用可能であり、データは1日2回更新されます。
レポートは、アクティブユーザー数、リクエスト総数、言語別リクエスト数、プラットフォーム別リクエスト数、および提供されていないデバイス言語について提供されます。
各配信のレポートには、ページのアイコンからアクセスします。
OTA SDKを統合するための技術ドキュメントは、各プロジェクトリポジトリのREADMEファイルで入手できます。