Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
Visual Studio App Center, 30 Haziran 2026'ya kadar desteklenmeye devam edecek Analiz ve Tanılama özellikleri dışında 31 Mart 2025'te kullanımdan kaldırılmıştır. Daha fazla bilgi edinin.
macOS, tvOS ve iOS kilitlenme raporları, kilitlenme oluştuğu sırada uygulamanızın çalışan tüm iş parçacıkları için yığın izlemelerini gösterir. Yığın izlemeleri yalnızca bellek adreslerini içerir; kilitlenmeleri anlamak için gereken sınıf adları, yöntemler, dosya adları veya satır numaraları içermez.
Bellek adreslerinin çevrilmesi için simgeselleştirme için gereken tüm bilgileri içeren bir dSYM paketini App Center'a yüklemeniz gerekir. Sembolikleştirme hakkında daha fazla bilgiyi Apple'ın resmi geliştirici belgelerinden öğrenebilirsiniz.
App Center Derleme ve Dağıtım hizmeti otomatik olarak geçerli bir dSYM ve kaynak eşleme .zip dosyası oluşturabilir ve dosyayı Tanılama hizmetine yükleyebilir. Uygulamanızı derlemek ve son kullanıcılarınıza otomatik olarak dağıtmak için App Center kullanıyorsanız sembol dosyalarını el ile edinmeniz ve karşıya yüklemeniz gerekmez.
Sembolsüz kilitlenmeler
Simgesiz kilitlenmeler, simgeleri yüklemeden önce bile bazı ayrıntıları görüntüleyebilmeniz için App Center Diagnostics bölümünde görüntülenir. Bu kilitlenmelerin eksik simgeleri "simgelenmemiş" sekmesinde gösterilir. Eksik simgeler karşıya yüklenirse, simgelenmemiş kilitlenme grubu simgeleştirilmiş kilitlenme grubuyla değiştirilir.
.dSYM Paketi bulma
- Xcode'da Pencere menüsünü açın ve düzenleyici'yi seçin.
- Arşivler sekmesini seçin.
- Sol kenar çubuğunda uygulamanızı seçin.
- En son arşive sağ tıklayın ve Bulucu'da göster'i seçin.
- Bulucu'da dosyaya
.xcarchivesağ tıklayın ve Paket İçeriğini Göster'i seçin. - dSYM paketinizi içeren adlı
dSYMsbir klasör görmeniz gerekir. - dSYM paketinin zip dosyasını oluşturun.
Xcode yerine Visual Studio kullanıyorsanız, dSYM dosyasını bulmak için iOS kilitlenme günlüklerini simgeleyen dSYM dosyasını nerede bulabilirim? bölümüne bakın.
Simgeler yükleniyor
App Center Portalı
- App Center'da oturum açın ve uygulamanızı seçin.
- Soldaki menüde Tanılama bölümüne gidin ve Simgeler'i seçin.
- Sağ üst köşede Sembolleri karşıya yükle'ye tıklayın ve dosyayı karşıya yükleyin.
- Simgeler App Center tarafından dizine alındıktan sonra kilitlenmeler sizin için sembolik hale gelir.
React Native iOS uygulamaları
React Native iOS dosyalarının sembol dosyalarını almak için Mac bilgisayarınızda dSYM paketi ve uygulamanızın JavaScript kaynak haritası ile bir ZIP dosyası oluşturun. Kaynak harita index.ios.map olarak adlandırılmalıdır. Aşağıdaki komutlar yayın derlemeleri için kaynak eşleme oluşturur:
react-native bundle --entry-file index.ios.js --platform ios --dev false --reset-cache --bundle-output unused.jsbundle --sourcemap-output index.ios.map
App Center API'si
API aracılığıyla sembolleri karşıya yükleme işlemi üç API çağrısı serisini içerir: biri arka ucumuzda yer ayırmak, biri dosyayı karşıya yüklemek için ve biri de karşıya yüklemenin durumunu güncelleştirmek için. İlk API çağrısının gövdesi, `symbol_type` öğesini `Apple` olarak ayarlamalıdır.
-
POSTisteğini symbol_uploads API'sine tetikle. Bu çağrı, dosyanız için arka uçta yer ayırır ve birsymbol_upload_idveupload_urlözelliği döndürür.
curl -X POST 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{JSON BODY}'
- İlk adımda döndürülen
upload_urlözelliğini kullanarak,PUTbaşlıklı üst bilgi ile bir"x-ms-blob-type: BlockBlob"isteği yapın ve dosyanızın disk üzerindeki konumunu belirtin. Bu çağrı, dosyayı arka uç depolama hesaplarımıza yükler. PUT Blob isteği üst bilgileri hakkında daha fazla bilgi edinin.
curl -X PUT '{upload_url}' \
-H 'x-ms-blob-type: BlockBlob' \
--upload-file '{path to file}'
- İlk adımda döndürülen
PATCHözelliğini kullanarak symbol_uploads API'sine birsymbol_upload_idisteği gönderin. İsteğin gövdesinde, yükleme işleminin durumunu ayarlamak isteyip istemediğinizi belirtin:committed(başarıyla tamamlandı) veyaaborted(başarısız oldu).
curl -X PATCH 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{ "status": "committed" }'
Uyarı
Sembol yükleme API'si 256 MB'tan büyük dosyalar için çalışmaz. Bu dosyaları karşıya yüklemek için App Center CLI'sini kullanın. App Center CLI depomuzdaki yönergeleri izleyerek App Center CLI'yi yükleyebilirsiniz.
App Center CLI
Sembol dosyalarını karşıya yüklemek için CLI'yi de kullanabilirsiniz:
appcenter crashes upload-symbols --symbol {symbol file}
Bitcode
Bitcode, App Store'a gönderilen uygulamaların Apple tarafından yeniden derlenip en son iyileştirmeyi uygulamasına izin vermek için Apple tarafından tanıtıldı. Bitcode etkinleştirilirse, mağazadaki uygulamanız için oluşturulan simgeler kendi derleme sisteminizden farklı olur.
App Center kilitlenme raporlaması henüz bitcode özellikli uygulamalardan gelen kilitlenmelerin simgeselleştirmesini tam olarak desteklemez. Bu arada bitcode özelliğini devre dışı bırakmanızı öneririz. Bit kodunun devre dışı bırakılması sembol yönetimini önemli ölçüde basitleştirir ve şu anda iOS uygulamaları için bilinen herhangi bir dezavantajı yoktur.
Uygulamanız için bit kodunu devre dışı bırakma
- Xcode'da Proje Gezgini'ndeki üst düzey öğeye tıklayarak proje ayarlarınızı açın
- Yapı Ayarları sayfasına gidin
-
bitcodearayın. - Sonuç olarak, evet olan değeri Hayır olarak değiştirin
- Uygulamanızı yeniden oluşturma
Bu basit adımlarla App Center kilitlenme raporlaması her zamanki gibi çalışır.
Bitcode özellikli uygulamalar için sembolleri alma
bitcode'un etkin kalmasını istiyorsanız, aşağıdaki adımları izleyerek uygun dSYM dosyalarını indirebilirsiniz:
- Xcode'un Düzenleyicisi'ni açma
- iTunes Connect'e yüklediğiniz uygulamanızın belirli arşivini seçin
- "dSYM'leri indir" düğmesine tıklayın. Bu adım, Bitcode derlenmiş dSYM dosyalarını özgün arşive ekler.
- Simgeleri App Center'da ilgili uygulamaya ve sürüme yükleme
Xcode düzenleyicisi yeni sembol sağlamazsa, aşağıdaki adımları izleyerek dSYM dosyalarını iTunes Connect portalından indirmeniz gerekir:
- iTunes Connect portalında uygulamanızı seçin
- Üstteki Etkinlik sekmesini seçin
- Uygulamanızın eksik simgeleri içeren derleme sürümünü seçin
- dSYM'yi İndir bağlantısına tıklayın
- İndirilen dosyayı App Center'a yükleyin. Bu dosya, App Center'ın çökme raporlarınızı sembolize etmesi için gereken simgeleri içerir.
Sembol sorunlarını giderme
Sembolleri karşıya yükledikten ve bit kodunu devre dışı bıraktıktan sonra kilitlenmeleriniz hala sembollendirilmemiş görünüyorsa, bunun nedeni karşıya yüklenen dSYM dosyalarının App Center'ın gerektirdiği dosyalarla eşleşmemesi olabilir. dSYM dosyalarını karşıya yüklediğinizde, App Center bunları UUID'lerine göre doğru uygulama sürümüyle eşleştirir.
dwarfdump adlı bir CLI aracı kullanarak dSYM dosyalarınızın doğru UUID'lere sahip olup olmadığını bir kez daha kontrol edebilirsiniz.
- UUID dosyasını dSYM dosyasında bulun:
dwarfdump --u CrashProbeiOS.app.dSYM
- Sonuç şuna benzer olmalıdır:
UUID:ADF53C85-4638-3EFF-A33C-42C13A18E915 (armv7)CrashProbeiOS.app.dSYM/Contents/Resources/DWARF/CrashProbeiOS
UUID:D449E33D-7E74-379D-8B79-15EE104ED1DF (arm64)CrashProbeiOS.app.dSYM/Contents/Resources/DWARF/CrashProbeiOS
- Döndürülen UUID'nin hata ayıklama simgeleri iletişim kutusunda gösterilen UUID'lerle eşleşip eşleşmediğini bir kez daha denetleyin:
Sembolleri görmezden gelmek
App Center tüm simge dosyalarına sahip olmadığında kilitlenme raporlarını tam olarak simgelemez ve Kilitlenmeler, Simgelenmemiş sekmesinde listelenir. Erişiminiz varsa, bu sayfadan gerekli sembolleri yükleyebilirsiniz.
Simgeleri karşıya yükleyemiyorsanız, tabloda satırları seçip Sürümleri yoksay düğmesine tıklayarak bunları Yoksayıldı olarak işaretleyebilirsiniz. Bu düğme, App Center'a çökmeleri işlemesini ve mevcut simgeleri kullanarak mümkün olduğunca eksiksiz bir şekilde simgeleştirmesini söyler. İşleme alındıktan sonra, Kilitlenmeler sekmesinde kısmen sembolize edilmiş olarak görünürler. Yoksayıldı olarak işaretlenen aynı sembol kimliklerine de bağlı olan yeni çökmeler, sistemden geçen Simgelenmemiş sekmesini atlar.