Oyun Derleme, Yükleme ve Çalıştırma Sürecinde Hata Ayıklama

Giriş

Aşağıda, Unity için Firebase SDK'sını kullanan Unity oyunlarında derleme ve oluşturma işlemi sürecinde hata ayıklama ile ilgili bir kılavuz verilmiştir. Bu dokümanda, oyununuzu yeni bir platform için yapılandırırken ve oluştururken veya bir güncellemeden sonra karşılaşabileceğiniz daha yaygın sorunların çoğunu nasıl araştırıp çözeceğiniz açıklanmaktadır. Bu hatalar, işlemde oluşabilecekleri sıraya göre düzenlenmiştir. Bunları sırayla inceleyin ve her biri çözüldükçe devam edin.

Bu belgenin yanı sıra daha fazla bilgi için Firebase for Unity SSS bölümüne bakın.

Play Mode derleme sorunları

İlk derleme sorunları sınıfı, mobil derleme başlatmaya çalışmadan önce düzenleyicide test yaparken ortaya çıkabilir. Bu bölümde, Play Modu'ndan önce ve Play Modu sırasında oluşan tüm Firebase hataları ele alınır.

Unity başlatıldığında veya bağımlılıklarda, kodda ya da diğer öğelerde değişiklik algıladığında projeyi yeniden oluşturmaya çalışır. Proje o sırada derlenemezse düzenleyici, derleme hatalarını konsola kaydeder. Play Modu'na girmeye çalışırsanız Unity'nin Scene sekmesinde All compiler errors have to be fixed before you can enter playmode! şeklinde bir hata pop-up'ı görürsünüz.

Eksik türler, sınıflar, yöntemler ve üyeler

Birçok Firebase sorunu, düzenleyicinin ve derleyicinin gerekli türleri, sınıfları, yöntemleri ve üyeleri bulamaması nedeniyle oluşur. Bu durumun yaygın belirtileri şunlardır:

The type or namespace name ‘<CLASS OR NAMESPACE NAME>' could not be found. Are you missing a using directive or an assembly reference?

The type or namespace name <TYPE OR NAMESPACE NAME> does not exist in the namespace ‘Firebase<.OPTIONAL NESTED NAMESPACE NAME PATH>' (are you missing an assembly reference?)

‘<CLASS NAME>' does not contain a definition for ‘<MEMBER VARIABLE OR METHOD NAME>'

Çözüm adımları:
  1. Kodda Firebase sınıflarını veya yöntemlerini kullandığınız yerlerde, gerekli Firebase ürünleri için doğru using yönergelerini kullanarak bunları kullanılabilir hale getirdiğinizden emin olun.

    1. MechaHamster: Level Up With Firebase Edition'dan örnekler:
      1. using Firebase.RemoteConfig;
      2. using Firebase.Crashlytics;
  2. Uygun Firebase paketlerini içe aktardığınızı doğrulayın:

    1. Uygun paketleri içe aktarmak için:
      1. Firebase Unity SDK'yı .unitypackages olarak ekleyin veya
      2. Ek Unity yükleme seçenekleri bölümündeki alternatiflerden birini inceleyip uygulayın.
    2. Projenizdeki ve EDM4U'daki her Firebase ürününün:
      • Aynı sürümde olmalıdır.
      • .unitypackages exclusively OR exclusively through the Unity Package Manager.
  3. Firebase Unity SDK'yı "10.0.0" sürümünden önce .unitypackage olarak içe aktardıysanız Firebase Unity SDK zip arşivinde hem .NET 3.x hem de .NET 4.x desteği için paketler bulunur. Projenize yalnızca uyumlu .NET Framework düzeyini eklediğinizden emin olun:

    1. Unity Editor sürümleri ile .NET Frameworks düzeyleri arasındaki uyumluluk Firebase'i Unity projenize ekleme bölümünde ele alınmaktadır.
    2. Firebase paketlerinizi yanlış .NET Framework düzeyinde yanlışlıkla içe aktardıysanız veya .unitypackage yerine Ek Unity yükleme seçeneklerinden birini kullanmaya geçmeniz gerekiyorsa en temiz yöntem , bu taşıma bölümünde belirtilen yöntemlerle her Firebase paketini kaldırıp tüm Firebase paketlerini tekrar içe aktarmaktır.
  4. Düzenleyicinizin projenizi yeniden oluşturduğunu ve oynatma girişimlerinizin projenizin en güncel durumunu yansıttığını kontrol edin:

    1. Varsayılan olarak, öğe veya yapılandırma değişiklikleri algılandığında Unity düzenleyicisi yeniden oluşturulacak şekilde ayarlanır.
    2. Bu işlev devre dışı bırakılmış ve Unity Editor manuel yenileme/yeniden derleme olarak ayarlanmış olabilir. Bu durumu araştırın ve böyle bir durum söz konusuysa manuel yenilemeyi deneyin.

Oynatma modu çalışma zamanı hataları

Oyununuz başlatılıyorsa ancak çalışırken Firebase ile ilgili sorunlar yaşıyorsa aşağıdakileri deneyin:

Mac OS'te "Güvenlik ve Gizlilik" bölümünde Firebase paketlerini onayladığınızdan emin olun.

Mac OS'te oyunu düzenleyicide başlatırken "FirebaseCppApp-<version>.bundle, geliştirici doğrulanamadığı için açılamıyor." şeklinde bir iletişim kutusu gösteriliyorsa Mac'in Güvenlik ve Gizlilik menüsünde söz konusu paket dosyasını onaylamanız gerekir.

Bunu yapmak için Apple simgesi > Sistem Tercihleri > Güvenlik ve Gizlilik'i tıklayın.

Güvenlik menüsünde, sayfanın yaklaşık yarısında ""FirebaseCppApp-<version>.bundle" dosyası, tanımlanmış bir geliştiriciye ait olmadığı için kullanımının engellendiği" yazan bir bölüm bulunur.

Allow Anyway (Yine de İzin Ver) etiketli düğmeyi tıklayın.