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(Globally Unique Identifier) 형식의 애플리케이션 식별자를 사용합니다. HockeyApp 앱 ID는 App Center에서 사용할 수 있지만 다른 형식으로 변환해야 합니다. 식별자를 변환하려면 4개의 하이픈을 추가하여 8-4-4-4-12 표현을 가져와야 합니다.
이전(HockeyApp): 00112233445566778899aabbccddeeff
이후(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;
앱의 기본 활동 클래스 내의 등록 코드를 대체합니다.
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 |
크래시
기능 | HockeyApp | App Center |
---|---|---|
자동으로 크래시 보내기 | 기본적으로 사용 안 함 | 설명서(기본적으로 사용) |
추가 메타 데이터 연결 | Yes | 설명서(수신기에서 첨부할 수 있습니다.) |
사용자 사용자 지정 대화 상자 | Yes | 설명서(기본적으로 제공되지 않음) |
보내는 상태 대한 정보 가져오기 | Yes | 문서 |
이전 크래시 정보 | CrashManager.getLastCrashDetails |
Crashes.getLastSessionCrashReport |
배포
참고
HockeyApp과 달리 App Center 앱 내 업데이트 기능은 App Center 배포 서비스를 사용하여 배포되는 릴리스 빌드(기본적으로)에서만 작동합니다. 앱이 프라이빗 메일 그룹을 사용하는 경우 App Center 배포 SDK가 추가된 후 처음으로 앱이 설치되고 열리면 브라우저가 열리고 사용자를 인증하고 앱 내 업데이트를 사용하도록 설정합니다. 런타임에 프라이빗 앱 내 업데이트 트랙을 설정하는 경우에도 이 브라우저가 열립니다. 이는 앱의 후속 릴리스에 대해 발생하지 않는 일회성 단계입니다. 자세한 내용은 App Center 배포 설명서를 참조하세요 .
기능 | HockeyApp | App Center |
---|---|---|
제한된 앱 내 업데이트 | LoginManager.verifyLogin |
Distribute.setUpdateTrack |
런타임 시 서비스 사용 안 함 | UpdateManager.unregister |
Distribute.setEnabled |
업데이트 대화 상자 사용자 지정 | Yes | 문서 |
피드백 서비스
피드백 서비스는 App Center에서 지원되지 않습니다. HockeyApp 피드백을 참조하세요.