Check out what’s new from Firebase at Google I/O 2022. Learn more

Firebase Crashlytics'i kullanmaya başlayın

Bu hızlı başlangıç, Firebase konsolunda kapsamlı kilitlenme raporları alabilmeniz için Firebase Crashlytics SDK ile uygulamanızda Firebase Crashlytics'i nasıl kuracağınızı açıklar.

Crashlytics'i kurmak, hem Firebase konsolunda hem de IDE'nizde görevler gerektirir (bir Firebase yapılandırma dosyası ve Crashlytics SDK eklemek gibi). Kurulumu tamamlamak için, ilk kilitlenme raporunuzu Firebase'e göndermek üzere bir test kilitlenmesini zorlamanız gerekir.

Sen başlamadan önce

  1. Henüz yapmadıysanız, Apple projenize Firebase'i ekleyin . Apple uygulamanız yoksa örnek bir uygulama indirebilirsiniz.

  2. Önerilen : Kilitlenmeyen kullanıcılar, içerik haritası günlükleri ve hız uyarıları gibi özellikler elde etmek için Firebase projenizde Google Analytics'i etkinleştirmeniz gerekir.

    Crashlytics tarafından desteklenen tüm Apple platformları (watchOS hariç) Google Analytics'in bu özelliklerinden yararlanabilir. macOS ve tvOS uygulamaları için SDK v8.9.0+'a ihtiyacınız olduğunu unutmayın.

    • Mevcut Firebase projenizde Google Analytics etkin değilse, Google Analytics'i Firebase konsolundaki > Proje ayarları'nın Entegrasyonlar sekmesinden etkinleştirebilirsiniz.

    • Yeni bir Firebase projesi oluşturuyorsanız, proje oluşturma iş akışı sırasında Google Analytics'i etkinleştirin.

1. Adım : Firebase Crashlytics SDK'sını uygulamanıza ekleyin

Firebase bağımlılıklarını kurmak ve yönetmek için Swift Paket Yöneticisi'ni kullanın.

  1. Xcode'da, uygulama projeniz açıkken File > Add Packages seçeneğine gidin.
  2. İstendiğinde, Firebase Apple platformları SDK deposunu ekleyin:
  3.   https://github.com/firebase/firebase-ios-sdk
      
  4. Crashlytics kitaplığını seçin.
  5. Crashlytics ile optimum deneyim için Firebase projenizde Google Analytics'i etkinleştirmenizi ve Google Analytics için Firebase SDK'sını uygulamanıza eklemenizi öneririz. IDFA koleksiyonu olmayan veya IDFA koleksiyonu olan kütüphaneyi seçebilirsiniz.
  6. Bittiğinde, Xcode otomatik olarak bağımlılıklarınızı arka planda çözmeye ve indirmeye başlayacaktır.

Ardından, Firebase modülünü yapılandırın:

  1. Firebase modülünü App yapınıza veya UIApplicationDelegate aktarın:

    Süratli

    import Firebase

    Amaç-C

    @import Firebase;
  2. Genellikle App başlatıcısında veya uygulama temsilcinizin application(_:didFinishLaunchingWithOptions:) yönteminde bir FirebaseApp paylaşılan örneği yapılandırın:

    Süratli

    // Use the Firebase library to configure APIs.
    FirebaseApp.configure()
    

    Amaç-C

    // Use the Firebase library to configure APIs.
    [FIRApp configure];
    
tutucu89 l10n-yertutucu91 l10n-yer

Adım 2 : dSYM dosyalarını otomatik olarak yüklemek için Xcode'u ayarlayın

İnsanlar tarafından okunabilir kilitlenme raporları oluşturmak için Crashlytics, projenizin hata ayıklama sembolü (dSYM) dosyalarına ihtiyaç duyar. Aşağıdaki adımlar, Xcode'u dSYM'lerinizi otomatik olarak üretecek, işleyecek ve uygulamanızı her oluşturduğunuzda dosyaları karşıya yükleyecek şekilde nasıl yapılandıracağınızı açıklar.

  1. Projenizin Xcode çalışma alanını açın, ardından sol gezginde proje dosyasını seçin.

  2. HEDEFLER listesinden ana yapı hedefinizi seçin.

  3. Yapı Ayarları sekmesine tıklayın, ardından Xcode'un yapılarınız için dSYM'ler üretmesi için aşağıdaki adımları tamamlayın.

    1. Tümü'ne tıklayın, ardından debug information format arayın.

    2. Tüm yapı türleriniz için Hata Ayıklama Bilgi Formatını DWARF with dSYM File ayarlayın.

  4. Yapı Aşamaları sekmesine tıklayın, ardından Xcode'un dSYM'lerinizi işleyebilmesi ve dosyaları karşıya yükleyebilmesi için aşağıdaki adımları tamamlayın.

    1. > Yeni Çalıştırma Komut Dosyası Aşaması öğesine tıklayın.

      Bu yeni Run Script aşamasının projenizin son inşa aşaması olduğundan emin olun; aksi takdirde Crashlytics, dSYM'leri düzgün şekilde işleyemez.

    2. Yeni Komut Dosyasını Çalıştır bölümünü genişletin.

    3. Komut dosyası alanına ( Kabuk etiketinin altında bulunur), aşağıdaki çalıştırma komut dosyasını ekleyin.

      Bu komut dosyası projenizin dSYM dosyalarını işler ve dosyaları Crashlytics'e yükler.

      "${BUILD_DIR%/Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run"
    4. Giriş Dosyaları bölümünde, aşağıdaki dosyaların konumlarının yollarını ekleyin:

      • Projenizin dSYM dosyalarının konumu:

        ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}

        Projenizin dSYM dosyalarının konumunu sağlamak, Crashlytics'in büyük uygulamalar için dSYM'leri daha hızlı işlemesini sağlar.

      • Projenizin yerleşik Info.plist dosyasının konumu:

        $(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)

        Projenizin yerleşik Info.plist dosyasının konumunu sağlamak, Crashlytics'in bir uygulama sürümünü dSYM'lerle ilişkilendirmesini sağlar.

dSYM dosyaları ve Crashlytics hakkında daha ayrıntılı bilgi için (dSYM dosyalarının manuel olarak nasıl yükleneceği dahil), Gizlenmemiş kilitlenme raporlarını alma sayfasını ziyaret edin.

tutucu93 l10n-yertutucu95 l10n-yer

3. Adım : Kurulumu tamamlamak için bir test çökmesini zorlayın

Crashlytics kurulumunu tamamlamak ve Firebase konsolunun Crashlytics panosunda ilk verileri görmek için bir test çökmesini zorlamanız gerekir.

  1. Uygulamanıza, bir test çökmesini zorlamak için kullanabileceğiniz bir kod ekleyin.

    Uygulamanıza basıldığında çökmeye neden olan bir düğme eklemek için aşağıdaki kodu kullanabilirsiniz. Düğme "Çökme Testi" olarak etiketlenmiştir.

    SwiftUI

    Button("Crash") {
      fatalError("Crash was triggered")
    }
    

    UIKit

    Süratli

    import UIKit
    
    class ViewController: UIViewController {
      override func viewDidLoad() {
          super.viewDidLoad()
    
          // Do any additional setup after loading the view, typically from a nib.
    
          let button = UIButton(type: .roundedRect)
          button.frame = CGRect(x: 20, y: 50, width: 100, height: 30)
          button.setTitle("Test Crash", for: [])
          button.addTarget(self, action: #selector(self.crashButtonTapped(_:)), for: .touchUpInside)
          view.addSubview(button)
      }
    
      @IBAction func crashButtonTapped(_ sender: AnyObject) {
          let numbers = [0]
          let _ = numbers[1]
      }
    }
    

    Amaç-C

    #import "ViewController.h"
    
    @implementation ViewController
    ‐ (void)viewDidLoad {
        [super viewDidLoad];
    
        // Do any additional setup after loading the view, typically from a nib.
    
        UIButton* button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
        button.frame = CGRectMake(20, 50, 100, 30);
        [button setTitle:@"Test Crash" forState:UIControlStateNormal];
        [button addTarget:self action:@selector(crashButtonTapped:)
            forControlEvents:UIControlEventTouchUpInside];
        [self.view addSubview:button];
    }
    
    ‐ (IBAction)crashButtonTapped:(id)sender {
        @[][1];
    }
    
    @end
    
  2. Uygulamanızı Xcode'da oluşturun ve çalıştırın.

    1. Oluştur'a tıklayın ve ardından uygulamanızı bir test cihazında veya simülatörde oluşturmak için mevcut şemayı çalıştırın .

    2. Uygulamanız çalışana kadar bekleyin, ardından uygulamanızın ilk örneğini kapatmak için Şemayı veya eylemi çalıştırmayı durdur'u . Bu ilk örnek, Crashlytics'e müdahale eden hata ayıklayıcıyı içeriyordu.

  3. Uygulamanızın ilk kilitlenme raporunu göndermek için test kilitlenmesini zorlayın:

    1. Test cihazınızın veya simülatörünüzün ana ekranından uygulamanızı açın.

    2. Uygulamanızda, yukarıdaki kodu kullanarak eklediğiniz "Test Crash" düğmesine basın.

    3. Uygulamanız kilitlendikten sonra, uygulamanızın kilitlenme raporunu Firebase'e gönderebilmesi için Xcode'dan tekrar çalıştırın.

  4. Test çökmenizi görmek için Firebase konsolunun Crashlytics panosuna gidin.

    Konsolu yenilediyseniz ve beş dakika sonra test çökmesini hâlâ görmüyorsanız, uygulamanızın kilitlenme raporları gönderip göndermediğini görmek için hata ayıklama günlüğünü etkinleştirin .

tutucu99 l10n-yer


Ve bu kadar! Crashlytics artık uygulamanızı çökmelere karşı izliyor. Tüm raporlarınızı ve istatistiklerinizi görüntülemek ve araştırmak için Crashlytics panosunu ziyaret edin.

Sonraki adımlar

tutucu105 l10n-yer