Apache Cordova の概要
重要
Visual Studio App Center は、2025 年 3 月 31 日に廃止される予定です。 完全に廃止されるまで Visual Studio App Center を引き続き使用できますが、移行を検討できる推奨される代替手段がいくつかあります。
注意
Cordova アプリのサポートは 2022 年 4 月に終了しました。 詳細については、 App Center ブログを参照してください。
App Center SDK ではモジュール式アーキテクチャが使用されるため、Apache Cordova アプリケーションで App Center サービスの 1 つ、複数、またはすべてを簡単に使用できます。
この記事では、App Center SDK を Apache Cordova アプリケーションに追加し、アプリケーションで App Center Analytics と App Center のクラッシュ機能を構成する方法について説明します。
1.前提条件
開始する前に、Apache Cordova アプリケーション プロジェクトが次の最小要件を満たしていることを確認します。
- Cordova CLI 6.4.0 以降
cordova-android
engine 5.0.0 以降cordova-ios
engine 4.3.0 以降
Cordova CLI のバージョンを確認するには、ターミナル ウィンドウまたは Windows コマンド プロンプトを開き、次のコマンドを実行します。
cordova -v
と のバージョンをcordova-android
確認するには、プロジェクトの config.xml ファイルを開きます。次に示す要素で定義されているプラットフォーム エンジンがありますengine
。cordova-ios
<engine name="android" spec="~6.2.3" />
<engine name="ios" spec="~4.4.0" />
CocoaPods もインストールされている必要があります。 このためには、 を実行します。 sudo gem install cocoapods
pod setup
2. App Center アプリ シークレットの取得
App Center SDK が App Center でアプリケーション プロジェクトに接続するには、SDK に App Center プロジェクトの アプリ シークレットが必要です。 この値を使用して App Center Apache Cordova SDK を構成する方法を後で学習しますが、ここでは、その場所を確認します。
既存の App Center アプリケーション プロジェクトがある場合は、 App Center ダッシュボードにアクセスして、プロジェクトを開きます。 アプリケーション プロジェクトの [設定] ページでアプリ シークレットを使用することもできます。 ページの右上隅にあるメニューにアクセスし、[ アプリ シークレットのコピー ] を選択して、アプリ シークレットをクリップボードにコピーします。
App Center ダッシュボードでアプリケーションを作成していない場合は、次の手順を実行します。
- App Center アカウントに登録するか、 で既存の App Center アカウント https://appcenter.msにログインします。
- App Center ダッシュボードで、ページの右上隅にある [ 新しい追加] ドロップダウンをクリックします。 メニューから [ 新しいアプリの追加] を選択します。
- アプリケーション プロジェクトの名前を入力し、必要に応じてオプションの説明を追加します。
- アプリケーション プロジェクトに適した OS (Android または iOS のみ) を選択し、 Cordova プラットフォーム オプションを選択します。
- ページの右下隅にある [ 新しいアプリの追加] ボタンをクリックします。
- アプリケーション プロジェクトの [設定] ページでアプリ シークレットを見つけます。 ページの右上隅にあるメニューにアクセスし、[ アプリ シークレットのコピー ] 項目を選択して、アプリ シークレットをクリップボードにコピーします。
3. App Center SDK をプロジェクトに追加する
SDK のインストール
Apache Cordova プロジェクトの場合、SDK は標準の Apache Cordova プラグインを介して配布されます。 このセクションで説明する手順に従って、App Center SDK を Cordova プロジェクトに追加します。 まず、ターミナル ウィンドウまたは Windows コマンド プロンプトを開き、Cordova プロジェクトのルート フォルダーに移動します。
App Center Analytics のサポートをプロジェクトに追加するには、次のコマンドを実行します。
cordova plugin add cordova-plugin-appcenter-analytics
App Center クラッシュのサポートをプロジェクトに追加するには、次のコマンドを実行します。
cordova plugin add cordova-plugin-appcenter-crashes
1 つのコマンドを使用して、すべての App Center 機能のプラグインをプロジェクトに追加するには、次のコマンドを実行します。
cordova plugin add cordova-plugin-appcenter-analytics cordova-plugin-appcenter-crashes
注意
App Center を使用するすべてのアプリで cordova-plugin-appcenter-analytics と cordova-plugin-appcenter-crashes を追加する必要があります。これらは、追加のセットアップやコーディングなしで開発者に役立つ情報を提供します。
プラグインの構成
アプリ シークレット
Apache Cordova プロジェクトで App Center SDK を使用する前に、App Center プロジェクト アプリ シークレットを使用してプロジェクトを構成する必要があります。
Apache Cordova プロジェクトの config.xmlファイルを 開きます。Apache Cordova プロジェクトのターゲット platform
要素 (現在は Android と iOS のみ) ごとに、次の形式の子 preference
要素を追加します。
<preference name="APP_SECRET" value="0000-0000-0000-0000-000000000000" />
この例では、値が の属性を持つ name
要素と、例に示す値 APP_SECRET
を value
持つ属性を追加しています。 ここでは、 0000-0000-0000-0000-000000000000
この例に示す は、App Center プロジェクト アプリ シークレットの任意の表現です。 例に示されているアプリ シークレットを、App Center プロジェクトの実際のアプリ シークレットに置き換えます。
完全な例として、Android と iOS の両方のターゲットをサポートする Apache Cordova プロジェクトの場合、App Center には個別のアプリ プロジェクト定義があるため、ターゲット プラットフォームごとにアプリ シークレットの値が異なります。 プロジェクトの config.xml ファイルの関連セクションは次のようになります。
<platform name="android">
<preference name="APP_SECRET" value="0000-0000-0000-0000-000000000001" />
</platform>
<platform name="ios">
<preference name="APP_SECRET" value="0000-0000-0000-0000-000000000002" />
</platform>
注意
この例では、実際のアプリ シークレット値は表示されません。これらは単なるモックアップであり、App Center プロジェクトのアプリ シークレットを取得し、ここで使用する必要があります。 App Center には Android および iOS アプリケーション プロジェクト用の固有のシークレットがあるため、アプリ シークレットは異なります。
分析の基本設定
アプリで App Center Analytics を使用している場合は、実行する追加の構成手順がいくつかあります。 エディターで Apache Cordova プロジェクトの config.xml ファイルを開き、次 preferences
の 1 つ以上の要素をファイルに追加します。
APPCENTER_ANALYTICS_ENABLE_IN_JS
- (省略可能、既定値は false) Analytics を自動的に有効にするかどうかを制御します。 の場合false
、Analytics は既定で有効になっています。 の場合true
、アプリケーションは (JavaScript コードで) を呼び出AppCenter.Analytics.setEnabled(true)
して、App Center にデータを送信する前に Analytics を有効にする必要があります。 この基本設定は、アプリケーション内で有効にする前に分析情報を共有するかどうかをユーザーに確認する場合に便利です。 ユーザー イベントを手動で送信する方法の詳細については、こちらを参照してください。例:
<preference name="APPCENTER_ANALYTICS_ENABLE_IN_JS" value="true" />
APPCENTER_CRASHES_ALWAYS_SEND
- (省略可能、既定値は true) アプリがクラッシュしたときにクラッシュ レポートを App Center に自動的に送信するかどうかを指定します。 クラッシュ レポートを自動的に送信すると、すべてのクラッシュが報告され、エンジニアリングチームとサポート チームが圧倒される可能性があります。 クラッシュ レポートを手動で (にfalse
設定APPCENTER_CRASHES_ALWAYS_SEND
) 送信すると、アプリケーション内のコードがクラッシュをトリアージし、クラッシュ レポートが App Center に送信されるタイミング、レポートに含まれるデータなどを決定できます。 これは、開発者にとってより多くの作業を意味しますが、ユーザーのプライバシーをより詳細に制御し、クラッシュ レポートを含むメッセージを添付することもできます。 JS でのクラッシュ レポートの処理の詳細については、こちらを参照してください。例:
<preference name="APPCENTER_CRASHES_ALWAYS_SEND" value="false" />
自動バックアップを使用してデバイスに関する正しくない情報を取得しないようにする場合は、次の手順に従います。
注意
Android 6.0 (API レベル 23) 以降を対象とするアプリでは、自動バックアップが自動的に有効になります。
注意
バックアップ規則を含むカスタム ファイルが既にある場合は、3 番目の手順に切り替えます。
a. res/xml フォルダー appcenter_backup_rule.xml ファイルを作成します。
<resource-file src="appcenter_backup_rule.xml" target="res/xml/appcenter_backup_rule.xml" />
b. 属性をAndroidManifest.xmlファイル内の <application>
要素に追加するにはandroid:fullBackupContent
、アプリの config.xml ファイルに次の行を追加します。
<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application">
<application android:fullBackupContent="@xml/appcenter_backup_rule" />
</edit-config>
```
c. Add the following backup rules to the **appcenter_backup_rule.xml** file:
```xml
<full-backup-content xmlns:tools="http://schemas.android.com/tools">
<exclude domain="sharedpref" path="AppCenter.xml"/>
<exclude domain="database" path="com.microsoft.appcenter.persistence"/>
<exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
<exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
<exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
</full-backup-content>
4. 次はどこに行くの?
これで、ポータルで SDK によって自動的に収集された分析データとクラッシュ データを視覚化するように設定されています。 追加のセットアップは必要ありません。 App Center でできることについては、API ガイドとチュートリアルの 「分析 と クラッシュ 」セクションを参照してください。