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.
Çerez izni
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.
Ö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ı
/Assets/Plugins/Android/proguard-user.txtbağ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());