次の方法で共有


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 の初期化を置き換える

  1. アクティビティ クラスで次のインポートを置き換えます。

    次の処理の前

    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;
    
  2. アプリの メイン アクティビティ クラスの -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 ファイルから。

  3. アプリケーション全体で 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 のフィードバックに関するページを参照してください。