Global ayarlar

MobileAds sınıfı, için genel ayarlar sağlar .

Unity ana iş parçacığında reklam etkinlikleri oluşturma

Unity ana iş parçacığından farklı bir iş parçacığında etkinlik oluşturur. Reklam etkinliklerini uygular ve Unity nesneleriyle etkileşimde bulunursanız etkinlikleri Unity ana iş parçacığıyla senkronize etmeniz gerekir.

Reklam etkinliklerini Unity ana iş parçacığıyla manuel olarak veya senkronizasyonu yönetmesine izin vererek otomatik olarak senkronize edin.

Önerilen: Reklam etkinliklerini manuel olarak senkronize etme

Reklam etkinliklerini manuel olarak senkronize etmek için ana iş parçacığında ExecuteInUpdate yöntemini kullanın. UnityEngine nesneleriyle etkileşim kurarken ve RaiseAdEventsOnUnityMainThread özelliği devre dışıyken ExecuteInUpdate yöntemini kullanmanız gerekir.

Aşağıdaki örnekte, arka plan iş parçacığı kaydedilir ve UnityEngine nesneleriyle etkileşim kurmak için bir işlem çalıştırılır:

// Google Mobile Ads events are raised off the Unity main thread.

// This log is executed off the Unity main thread.
// Write all time-sensitive code before ExecuteInUpdate().
Debug.Log("Executing off the Unity main thread.");

// Use ExecuteInUpdate to run code on the main thread, allowing you to
// interact with Unity UI and GameObjects.
// Changed to fully-qualified name to resolve CS0103
GoogleMobileAds.Common.MobileAdsEventExecutor.ExecuteInUpdate(() =>
{
    // This callback may be delayed on Android until the user returns to the app.
    Debug.Log("Executing on the Unity main thread.");

    // Place all code that interacts with Unity UI and GameObjects inside this callback.
    if (_myGameObject != null)
    {
        _myGameObject.SetActive(true);
    }
});

Reklam etkinliklerinde senkronizasyonu otomatikleştirme

Reklam etkinliklerini senkronize etmek için MobileAds.RaiseAdEventsOnUnityMainThread özelliğini true olarak ayarlayın:

...
using GoogleMobileAds.Api;
...
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
    public void Start()
    {
        // When true all events raised by GoogleMobileAds will be raised
        // on the Unity main thread. The default value is false.
        MobileAds.RaiseAdEventsOnUnityMainThread = true;
    }
}

Video reklam ses kontrolü

Uygulamanızın kendi ses seviyesi kontrolleri (ör. özel müzik veya ses efekti ses seviyeleri) varsa uygulama ses seviyesini açıklamak, video reklamların uygulamadaki ses seviyesi ayarlarına uymasını sağlar. Bu sayede kullanıcılar video reklamları beklenen ses düzeyinde alır.

Ses yüksekliği düğmeleri veya işletim sistemi düzeyindeki ses düzeyi kaydırıcısı aracılığıyla kontrol edilen cihaz ses düzeyi, cihaz ses çıkışının ses düzeyini belirler. Ancak uygulamalar, ses deneyimini özelleştirmek için ses seviyelerini cihaz ses düzeyine göre bağımsız olarak ayarlayabilir.

Reklamı yüklemeden önce SetApplicationVolume() yöntemini çağırarak göreli uygulama sesini bildirebilirsiniz. Geçerli reklam ses seviyesi değerleri 0.0 (sessiz) ile 1.0 (mevcut cihaz ses seviyesi) aralığındadır. SDK'ya göreli uygulama hacmini nasıl bildireceğinize dair bir örneği aşağıda bulabilirsiniz:

// Set app volume to be half of current device volume.
MobileAds.SetApplicationVolume(0.5f);

Uygulama sesinin kapatıldığını SDK'ya bildirmek için reklamı yüklemeden önce SetApplicationMuted() yöntemini çağırın:

// Set app to be muted.
MobileAds.SetApplicationMuted(true);

Uygulama sesi varsayılan olarak mevcut cihaz sesine (1) ayarlanır ve uygulama sessize alınmaz.

Uygulamanızın özel şartları varsa ApplicationPreferences anahtarını gad_has_consent_for_cookies sıfır olarak ayarlayarak sınırlı reklamları etkinleştirebilirsiniz :

// Enable limited ads
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);

Android küçültme

Bu Unity yayınlama seçeneği, Java kodu küçültmeyi etkinleştirmenize olanak tanır. Küçültmeyi etkinleştirirseniz SDK tarafından referans verilen sınıfları tutmak için özel bir ProGuard dosyası da oluşturmanız gerekir.

  1. Özel ProGuard Dosyasını Etkinleştirme

    Project Settings > Player > Android > Publishing Settings > Build'e (Proje Ayarları > Oyuncu > Android > Yayınlama Ayarları > Derleme) gidin ve şunları seçin:

    • Özel Proguard Dosyası
  2. /Assets/Plugins/Android/proguard-user.txt bağlantısını açın ve aşağıdakileri ekleyin:

-keep class com.google.** { public *; }

Kilitlenme raporlamayı devre dışı bırakma

Hata ayıklama ve analiz amacıyla kilitlenme raporları toplar. Kilitlenme raporlamayı devre dışı bırakmak için Android ve iOS ile ilgili aşağıdaki bölümlere bakın.

Android

Uygulamanızın AndroidManifest.xml dosyasına <meta-data> etiketini ekleyin ve DISABLE_CRASH_REPORTING değerini true olarak ayarlayın:

<manifest>
   <application>
       <meta-data
           android:name="com.google.android.gms.ads.flag.DISABLE_CRASH_REPORTING"
           android:value="true" />
   </application>
</manifest>

iOS

iOS'te kilitlenme raporlarını devre dışı bırakmak için DisableSDKCrashReporting yöntemini çağırın:

void Awake() {
  MobileAds.DisableSDKCrashReporting();
}

Unity eklentisi sürümünü alma

Unity SDK sürümünü almak için aşağıdaki komutu çalıştırın:

// Get the Unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());

Platform sürümünü alma

Unity için , Android ve iOS platform SDK'larına bağlıdır. Platform SDK'sının sürümünü almak için aşağıdakileri çalıştırın:

// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());