Lớp MobileAds
cung cấp các chế độ cài đặt chung cho SDK Quảng cáo của Google trên thiết bị di động.
Tạo sự kiện quảng cáo trên luồng chính của Unity
SDK quảng cáo trên thiết bị di động của Google tạo ra các sự kiện trên một luồng khác với luồng chính của Unity. Nếu triển khai các sự kiện quảng cáo và tương tác với các đối tượng Unity, bạn phải đồng bộ hoá các sự kiện SDK quảng cáo trên thiết bị di động với luồng chính của Unity.
Đồng bộ hoá các sự kiện quảng cáo với luồng chính của Unity theo cách thủ công hoặc tự động bằng cách cho phép SDK quảng cáo trên thiết bị di động của Google xử lý việc đồng bộ hoá.
Đồng bộ hoá sự kiện quảng cáo theo cách thủ công
Để đồng bộ hoá các sự kiện quảng cáo, hãy sử dụng phương thức ExecuteInUpdate
theo cách thủ công trên luồng chính. Bạn phải sử dụng phương thức này khi thuộc tính RaiseAdEventsOnUnityMainThread
bị vô hiệu hoá và tương tác với các đối tượng UnityEngine.
Ví dụ sau đây ghi lại một luồng trong nền và chạy một thao tác để tương tác với các đối tượng UnityEngine:
rewardedAd.OnAdPaid += (AdValue value) =>
{
// Log the ad value immediately.
UnityEngine.Debug.Log($"Received ad value of {value.Value} {value.CurrencyCode}.");
MobileAdsEventExecutor.ExecuteInUpdate(() =>
{
// Interact with UnityEngine objects here.
});
};
Tự động đồng bộ hoá các sự kiện quảng cáo
Để SDK quảng cáo trên thiết bị di động của Google đồng bộ hoá các sự kiện quảng cáo, hãy đặt thuộc tính MobileAds.RaiseAdEventsOnUnityMainThread
thành true
:
...
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;
}
}
Kiểm soát âm lượng của quảng cáo dạng video
Nếu ứng dụng của bạn có các chế độ kiểm soát âm lượng riêng (chẳng hạn như mức âm lượng của hiệu ứng âm thanh hoặc âm nhạc tuỳ chỉnh), thì việc cho SDK quảng cáo trên thiết bị di động của Google biết mức âm lượng của ứng dụng sẽ cho phép quảng cáo dạng video tuân thủ các chế độ cài đặt âm lượng của ứng dụng. Việc này đảm bảo người dùng nhận được quảng cáo dạng video có âm lượng mong muốn.
Âm lượng của thiết bị (mà bạn có thể kiểm soát thông qua các nút âm lượng hoặc thanh trượt âm lượng ở cấp hệ điều hành) sẽ xác định âm lượng cho đầu ra âm thanh của thiết bị. Tuy nhiên, các ứng dụng có thể tự điều chỉnh mức âm lượng tương ứng với mức âm lượng của thiết bị để điều chỉnh trải nghiệm âm thanh.
Bạn có thể báo cáo âm lượng tương ứng của ứng dụng cho SDK quảng cáo trên thiết bị di động của Google bằng cách gọi phương thức SetApplicationVolume()
trước khi tải quảng cáo. Các giá trị âm lượng hợp lệ của quảng cáo nằm trong khoảng từ 0.0
(im lặng) đến 1.0
(âm lượng hiện tại của thiết bị). Dưới đây là một ví dụ về cách báo cáo âm lượng tương ứng của ứng dụng cho SDK:
// Set app volume to be half of current device volume.
MobileAds.SetApplicationVolume(0.5f);
Để thông báo cho SDK biết rằng bạn đã tắt tiếng ứng dụng, hãy gọi phương thức SetApplicationMuted()
trước khi tải quảng cáo:
// Set app to be muted.
MobileAds.SetApplicationMuted(true);
Theo mặc định, âm lượng của ứng dụng được đặt thành 1
(âm lượng hiện tại của thiết bị) và ứng dụng không bị tắt tiếng.
Sự đồng ý sử dụng cookie
Nếu ứng dụng của bạn có các yêu cầu đặc biệt, thì bạn có thể đặt khoá ApplicationPreferences
gad_has_consent_for_cookies
(không bắt buộc) thành 0 để bật quảng cáo bị hạn chế (LTD):
// Enable limited ads (LTD)
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);
Giảm thiểu kích thước ứng dụng Android
Lựa chọn xuất bản này của Unity cho phép bạn bật tính năng giảm thiểu mã java. Nếu bật tính năng rút gọn, bạn cũng cần tạo một tệp proguard tuỳ chỉnh để giữ lại các lớp mà SDK tham chiếu.
Bật tệp Proguard tuỳ chỉnh
Chuyển đến Project Settings > Player > Android > Publishing Settings > Build (Cài đặt dự án > Trình phát > Android > Chế độ cài đặt xuất bản > Bản dựng) rồi chọn:
- Tệp Proguard tuỳ chỉnh
Mở
/Assets/Plugins/Android/proguard-user.txt
rồi thêm nội dung sau:
-keep class com.google.** { public *; }
Tắt tính năng báo cáo sự cố
SDK quảng cáo trên thiết bị di động của Google thu thập báo cáo sự cố cho mục đích gỡ lỗi và phân tích. Bạn có thể tắt tính năng báo cáo sự cố này bằng mã sau. Các phần sau đây mô tả cách tắt tính năng báo cáo sự cố trên Android và iOS.
Android
Thêm thẻ <meta-data>
có DISABLE_CRASH_REPORTING
được đặt thành true
trong tệp AndroidManifest.xml
của ứng dụng:
<manifest>
<application>
<meta-data
android:name="com.google.android.gms.ads.flag.DISABLE_CRASH_REPORTING"
android:value="true" />
</application>
</manifest>
iOS
Gọi phương thức DisableSDKCrashReporting
để tắt báo cáo sự cố trên iOS:
void Awake() {
MobileAds.DisableSDKCrashReporting();
}
Lấy phiên bản trình bổ trợ Unity
Để lấy phiên bản Unity SDK, hãy chạy lệnh sau:
// Get the unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());
Lấy phiên bản nền tảng
SDK Quảng cáo của Google trên thiết bị di động dành cho Unity phụ thuộc vào SDK nền tảng Android và iOS. Để lấy phiên bản của SDK nền tảng, hãy chạy lệnh sau:
// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());