HockeySDK から App Center Android SDK への移行
重要
Visual Studio App Center は、2025 年 3 月 31 日に廃止される予定です。 完全に廃止されるまで Visual Studio App Center を引き続き使用できますが、移行を検討できる推奨される代替手段がいくつかあります。
HockeySDK ではなく App Center SDK を使用するようにアプリケーションを更新する場合は、このドキュメントに従ってください。
1. ライブラリを更新する
プロジェクトのアプリ レベルの build.gradle ファイル (app/build.gradle
) を開き、構成で次の行を dependencies { ... }
置き換えます。
次の処理の前
implementation 'net.hockeyapp.android:HockeySDK:...'
次の処理の後
def appCenterSdkVersion = '5.0.4'
implementation "com.microsoft.appcenter:appcenter-analytics:${appCenterSdkVersion}"
implementation "com.microsoft.appcenter:appcenter-crashes:${appCenterSdkVersion}"
implementation "com.microsoft.appcenter:appcenter-distribute:${appCenterSdkVersion}"
App Center SDK はモジュール式のアプローチで設計されています。関心のあるサービスのみを統合できます。 このセクションでは、各 SDK モジュールを個別の依存関係として追加する必要があります。 次の表の等価性を参照してください。
HockeyApp クラス | App Center モジュール |
---|---|
MetricsManager |
Analytics |
CrashManager |
Crashes |
UpdateManager |
Distribute |
2. SDK セットアップ コードを更新する
2.1 アプリケーション識別子を変換する
App Center SDK では、グローバル一意識別子 (GUID) 形式のアプリケーション識別子が使用されます。 HockeyApp App ID は App Center で使用できますが、別の形式に変換する必要があります。 識別子を変換するには、8-4-4-4-12 表現を取得するために 4 つのハイフンを追加する必要があります。
Before (HockeyApp): 00112233445566778899aabbccddeeff
After (App Center): 00112233-4455-6677-8899-aabbccddeeff
2.2 アプリケーション コードで SDK の初期化を置き換える
アクティビティ クラスで次のインポートを置き換えます。
次の処理の前
import net.hockeyapp.android.CrashManager; import net.hockeyapp.android.metrics.MetricsManager; import net.hockeyapp.android.UpdateManager;
次の処理の後
import com.microsoft.appcenter.AppCenter; import com.microsoft.appcenter.analytics.Analytics; import com.microsoft.appcenter.crashes.Crashes; import com.microsoft.appcenter.distribute.Distribute;
アプリの メイン アクティビティ クラスの -callback 内の登録コードを
onCreate
置き換えます。次の処理の前
CrashManager.register(this); MetricsManager.register(getApplication()); UpdateManager.register(this);
次の処理の後
AppCenter.start(getApplication(), "{Your App Secret}", Analytics.class, Crashes.class, Distribute.class);
メタデータを使用してアプリケーション識別子を指定した場合は、そこから初期化コードにコピーして削除する必要があります
<meta-data android:name="net.hockeyapp.android.appIdentifier" android:value="..." />
AndroidManifest.xml ファイルから。
アプリケーション全体で HockeyApp API 呼び出しを置き換えます。 詳細な API マッピング テーブルを以下に示します。
3. サービスと機能の比較
コア
機能 | HockeyApp | App Center |
---|---|---|
ログ レベルを調整する | HockeyLog.setLogLevel |
AppCenter.setLogLevel |
インストールを特定する | 内部使用のみ | AppCenter.getInstallId |
ユーザーの識別 | クラッシュのみ | AppCenter.setUserId |
分析
機能 | HockeyApp | App Center |
---|---|---|
セッションを自動的に追跡する | はい。無効にできます。 MetricsManager.setSessionTrackingDisabled |
ドキュメント (無効にすることはできません) |
プロパティを含むカスタム イベント | MetricsManager.trackEvent |
Analytics.trackEvent |
実行時にサービスを無効にする | MetricsManager.disableUserMetrics および MetricsManager.enableUserMetrics |
Analytics.setEnabled |
Crashes
機能 | HockeyApp | App Center |
---|---|---|
クラッシュを自動的に送信する | 既定で無効 | ドキュメント (既定で有効) |
追加のメタデータをアタッチする | Yes | ドキュメント (リスナーから添付できます) |
[ユーザーのカスタマイズ] ダイアログ | Yes | ドキュメント (既定では提供されていません) |
送信状態に関する情報を取得する | Yes | ドキュメント |
以前のクラッシュに関する情報 | CrashManager.getLastCrashDetails |
Crashes.getLastSessionCrashReport |
配布
注意
HockeyApp とは異なり、App Center アプリ内更新機能は、App Center Distribute サービスを使用して配布される RELEASE ビルド (既定) でのみ機能します。 アプリがプライベート配布グループを使用している場合、App Center Distribute SDK が追加された後にアプリを初めてインストールして開くと、ブラウザーが開いてユーザーを認証し、アプリ内更新を有効にします。 実行時にプライベートアプリ内更新トラックを設定すると、このブラウザーも開きます。 これは、アプリの後続のリリースでは発生しない 1 回限りの手順です。 詳細については、 App Center の配布に関するドキュメント を参照してください。
機能 | HockeyApp | App Center |
---|---|---|
制限付きアプリ内更新プログラム | LoginManager.verifyLogin |
Distribute.setUpdateTrack |
実行時にサービスを無効にする | UpdateManager.unregister |
Distribute.setEnabled |
更新ダイアログをカスタマイズする | Yes | ドキュメント |
フィードバック サービス
フィードバック サービスは App Center ではサポートされません。 HockeyApp のフィードバックに関するページを参照してください。