HockeySDK'den iOS için App Center SDK'sına geçiş
Önemli
Visual Studio App Center 31 Mart 2025'te kullanımdan kaldırılıyor. Tamamen kullanımdan kaldırılana kadar Visual Studio App Center'ı kullanmaya devam edebilirsiniz ancak geçiş yapmayı düşünebileceğiniz birkaç önerilen alternatif vardır.
Destek zaman çizelgeleri ve alternatifleri hakkında daha fazla bilgi edinin.
Uygulamanızı HockeySDK yerine App Center SDK'sını kullanacak şekilde güncelleştirmek istiyorsanız bu belgeleri izleyin.
1. Kitaplıkları güncelleştirme
1.1 Eski HockeySDK'yi kaldırın
El ile
SDK'yı el ile eklediyseniz şu adımları izleyin:
XCode projesinden başvuruyu kaldırın
HockeySDK.embeddedframework
. Başvuruyu kaldır düğmesine tıklayın, Çöp Sepetine Taşı düğmesine tıklamayın.Proje ayarlarınızı açın ve Üst Bilgi Arama Yolları / Çerçevesi Arama Yolları bölümlerindeki Derleme Ayarları sekmesinin altında HockeySDK ile ilgili üst bilgi dosyalarının konumlarını kaldırın.
Proje ayarlarınızı açın ve İkiliYi Kitaplıklarla Bağla bölümündeki Derleme Aşamaları sekmesinin altında HockeySDK ile ilgili bağımlılık girdilerini kaldırın.
Dosya sisteminden silin
HockeySDK.embeddedframework
.
Podfile
CocoaPods kullanarak SDK'yı eklediyseniz pod dosyasından pod "HockeySDK"
satırı kaldırın ve komutunu çalıştırınpod install
.
Kartaca
HockeySDK başvurularını içinden
Cartfile
kaldırın. Dosya sisteminden silinCartfile.Resolved
.XCode projesini silin
HockeySDK.framework
veHockeySDK.framework.dSYM
Çöp Kutusuna Taşı düğmesine tıklayın.Derleme Aşamaları sekmesini açın ve Betiği Çalıştır bölümünü bulun. ve
output.xcfilelist
'den HockeyApp'iinput.xcfilelist
kaldırın.
1.2 Yeni App Center SDK'sını ekleme
App Center SDK'sı Cocoapods, Carthage, Swift Paket Yöneticisi ve Xcode projenizde Çerçeveleri kullanarak tümleştirmeyi destekler. App Center SDK'sını tümleştirmeye ilişkin ayrıntılı yönergeleri App Center SDK belgelerinde okuyun.
Not
App Center SDK'sı modüler bir yaklaşımla tasarlanmıştır, böylece hizmetlerin herhangi birini veya tümünü kullanabilirsiniz. Sonraki tabloda denkliklere bakın:
HockeyApp sınıfı | App Center modülü |
---|---|
MetricsManager |
Analytics |
CrashManager |
Crashes |
UpdateManager |
Distribute |
2. SDK kurulum kodunu güncelleştirme
2.1 Uygulama tanımlayıcısını dönüştürme
App Center SDK'sı, uygulama tanımlayıcılarını genel olarak benzersiz tanımlayıcı (GUID) biçiminde kullanır. HockeyApp Uygulama Kimliğiniz App Center tarafından kullanılabilir ancak bunu farklı bir biçime dönüştürmeniz gerekir. Tanımlayıcıyı dönüştürmek için 8-4-4-4-12 gösterimi almak için dört kısa çizgi eklemeniz gerekir.
Önce (HockeyApp): 00112233445566778899aabbccddeeff
Sonra (App Center): 00112233-4455-6677-8899-aabbccddeeff
2.2 Uygulama kodunda SDK başlatmasını değiştirme
AppDelegate sınıfınızda aşağıdaki içeri aktarmaları değiştirin.
Önce:
@import HockeySDK;
import HockeySDK
Sonra:
@import AppCenter; @import AppCenterAnalytics; @import AppCenterCrashes; @import AppCenterDistribute;
import AppCenter import AppCenterAnalytics import AppCenterCrashes import AppCenterDistribute
Kayıt kodunu değiştirme
didFinishLaunchingWithOptions
yöntemini bulun ve HockeyApp kod oluşumlarını değiştirin.Önce:
[[BITHockeyManager sharedHockeyManager] configureWithIdentifier:@"APP_IDENTIFIER"]; [[BITHockeyManager sharedHockeyManager] startManager]; [[BITHockeyManager sharedHockeyManager].authenticator authenticateInstallation];
BITHockeyManager.shared().configure(withIdentifier: "APP_IDENTIFIER") BITHockeyManager.shared().start() BITHockeyManager.shared().authenticator.authenticateInstallation()
Sonra:
[MSACAppCenter start:@"{Your app secret}" withServices:@[[MSACAnalytics class], [MSACCrashes class], [MSACDistribute class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self, Crashes.self, Distribute.self])
Not
App Center SDK'sı için
[[BITHockeyManager sharedHockeyManager] configureWithBetaIdentifier:liveIdentifier:delegate]
eşdeğerlere sahip değildir.[İsteğe bağlı] Projenin Info.plist dosyasını değiştirme
Dağıt'ı kullanmayı planlıyorsanız yukarıdaki adımları izleyin:
- Info.plist dosyanıza veya
CFBundleURLTypes
içinURL types
yeni bir anahtar ekleyin (XCode'un Info.plist dosyanızı kaynak kodu olarak görüntülemesi durumunda). - İlk alt öğenin anahtarını veya
CFBundleURLSchemes
olarakURL Schemes
değiştirin. - URL düzeni olarak girin
appcenter-${APP_SECRET}
ve değerini uygulamanızın Uygulama Gizli Anahtarı ile değiştirin${APP_SECRET}
.
Bu konuda daha fazla bilgi için App Center Distribute belgelerine bakın.
- Info.plist dosyanıza veya
Uygulama genelinde HockeyApp API çağrılarını değiştirin. Ayrıntılı API eşleme tabloları aşağıda verilmiştir.
3. Hizmetler ve özellik karşılaştırması
Çekirdek
Özellik | HockeyApp | App Center |
---|---|---|
Günlük düzeyini ayarlama | [BITHockeyManager sharedHockeyManager].logLevel = BITLogLevelVerbose |
[MSACAppCenter setLogLevel:MSACLogLevelVerbose] |
Yüklemeleri tanımlama | [BITHockeyManager sharedHockeyManager].installString |
[MSACAppCenter installId] |
Kullanıcıları tanımlama | [BITHockeyManager sharedHockeyManager].userID |
[MSACAppCenter setUserId:@"your-user-id"] |
Analiz
HockeySDK, varsayılan başına ölçüm toplamaya olanak tanır.
App Center SDK'sı Analytics hizmetini yalnızca sınıfı yöntemine start
geçirirseniz Analytics
kaydeder.
Özellik | HockeyApp | App Center |
---|---|---|
Oturumları otomatik olarak izleme | Devre dışı bırakılamaz | Belgeler (devre dışı bırakılamaz) |
Özelliklere sahip özel olaylar | Yes | [MSACAnalytics trackEvent:withProperties:] |
Çalışma zamanında hizmeti devre dışı bırakma | [BITHockeyManager sharedHockeyManager].disableMetricsManager = YES |
[MSACAnalytics setEnabled:NO] |
Çökü -yor
HockeySDK varsayılan olarak kilitlenme raporlamasını etkinleştirir. Kilitlenmeler, uygulamanın bir sonraki başlatılışında hemen sunucuya gönderilir.
App Center SDK'sı crashes hizmetini yalnızca sınıfı yöntemine start
geçirirseniz Crashes
kaydeder.
Özellik | HockeyApp | App Center |
---|---|---|
Kilitlenmeleri otomatik olarak gönderme | [[BITHockeyManager sharedHockeyManager].crashManager setCrashManagerStatus: BITCrashManagerStatusAutoSend] |
Belgeler (varsayılan olarak etkindir) |
Test kilitlenmesi oluşturma | [[BITHockeyManager sharedHockeyManager].crashManager generateTestCrash] |
[MSACCrashes generateTestCrash] |
Önceki kilitlenme hakkında bilgi | [[BITHockeyManager sharedHockeyManager].crashManager lastSessionCrashDetails] |
[MSACCrashes lastSessionCrashReport] |
Mach özel durum işleme | Varsayılan olarak devre dışıdır | Belgeler (varsayılan olarak etkindir) |
Ek meta veri ekleme | Yes | Belgeler (temsilciden eklenebilir) |
Kullanıcıyı özelleştir iletişim kutusu | setAlertViewHandler | Belgeler (varsayılan olarak sağlanmaz) |
Çalışma zamanında hizmeti devre dışı bırakma | [[BITHockeyManager sharedHockeyManager] setDisableCrashManager: YES] |
[MSACCrashes setEnabled:NO] |
Dağıt
Not
HockeyApp'in aksine App Center uygulama içi güncelleştirmeler özelliği YALNIZCA App Center Distribute hizmeti kullanılarak dağıtılan derlemelerle çalışır. Hata ayıklayıcı eklendiğinde Dağıt özelliği çalışmaz. Uygulama özel bir dağıtım grubu kullanıyorsa, uygulama yüklendikten ve App Center Dağıtım SDK'sı eklendikten sonra ilk kez açıldıktan sonra, kullanıcının kimliğini doğrulamak ve uygulama içi güncelleştirmeleri etkinleştirmek için bir tarayıcı açılır. Çalışma zamanında özel uygulama içi güncelleştirme izlemesini ayarlarsanız bu tarayıcı da açılır. Bu, uygulamanızın sonraki sürümlerinde gerçekleşmeyecek tek seferlik bir adımdır. Daha fazla ayrıntı için App Center Dağıtım Belgeleri'ne bakın.
HockeySDK, uygulama içi güncelleştirmeleri varsayılan olarak etkinleştirmez.
App Center SDK'sı uygulama içi güncelleştirme hizmetini yalnızca sınıfı yöntemine start
geçirirseniz Distribute
kaydeder. HockeySDK'nin aksine bu modül varsayılan olarak etkindir.
Özellik | HockeyApp | App Center |
---|---|---|
Kısıtlı uygulama içi güncelleştirmeler | [[BITHockeyManager sharedHockeyManager].authenticator authenticateInstallation] |
MSACDistribute.updateTrack |
Çalışma zamanında hizmeti devre dışı bırakma | [[BITHockeyManager sharedHockeyManager] setDisableUpdateManager: YES] |
[MSACDistribute setEnabled:NO] |
Güncelleştirme iletişim kutusunu özelleştirme | shouldDisplayUpdateAlertForUpdateManager | Belgeler |