Với Audience Network, bạn có thể kiếm tiền từ ứng dụng iOS của mình bằng quảng cáo trên Facebook. Quảng cáo chèn giữa là quảng cáo toàn màn hình có thể hiển thị trong ứng dụng. Hãy làm theo hướng dẫn dưới đây để hiển thị loại đơn vị quảng cáo này. Hoặc nếu bạn quan tâm đến các loại đơn vị quảng cáo khác, hãy xem danh sách các loại có sẵn.
Hãy triển khai vị trí quảng cáo chèn giữa dưới đây.
Đảm bảo bạn đã hoàn tất hướng dẫn Bắt đầu và Bắt đầu dành cho iOS với Audience Network trước khi tiếp tục.
FBAudienceNetwork
, khai báo rằng ViewController
triển khai giao thức FBInterstitialAdDelegate
rồi thêm một biến thực thể cho đơn vị quảng cáo chèn giữa
import UIKit
import FBAudienceNetwork
class ViewController: UIViewController, FBInterstitialAdDelegate {
private var interstitialAd: FBInterstitialAd?
}
viewDidLoad
của trình kiểm soát chế độ xem rồi triển khai interstitialAdDidLoad
override func viewDidLoad() {
super.viewDidLoad()
// Instantiate an InterstitialAd object.
// NOTE: the placement ID will eventually identify this as your app. You can ignore it while you are testing
// and replace it later when you have signed up.
// While you are using this temporary code you will only get test ads and if you release
// your code like this to the App Store your users will not receive ads (you will get a 'No Fill' error).
let interstitialAd = FBInterstitialAd(placementID: "YOUR_PLACEMENT_ID")
interstitialAd.delegate = self
// For auto play video ads, it's recommended to load the ad at least 30 seconds before it is shown
interstitialAd.load()
self.interstitialAd = interstitialAd
}
func interstitialAdDidLoad(_ interstitialAd: FBInterstitialAd) {
guard interstitialAd.isAdValid else {
return
}
print("Ad is loaded and ready to be displayed")
interstitialAd.show(fromRootViewController: self)
}
ID hiển thị tại YOUR_PLACEMENT_ID
là ID tạm thời chỉ phục vụ mục đích thử nghiệm.
Nếu bạn sử dụng ID tạm thời này trong mã đang hoạt động, người dùng sẽ không nhận được quảng cáo (người dùng sẽ nhận được lỗi Không điền). Bạn phải quay lại đây sau khi thử nghiệm và thay thế ID tạm thời này bằng ID vị trí quảng cáo đang hoạt động.
Để tìm hiểu cách tạo ID vị trí quảng cáo đang hoạt động, hãy tham khảo phần Thiết lập Audience Network
Chọn mục tiêu bản dựng là thiết bị và chạy mã ở trên, bạn sẽ nhìn thấy nội dung như sau:Khi chạy quảng cáo trong trình mô phỏng, hãy thay đổi cài đặt sang chế độ thử nghiệm để xem quảng cáo thử nghiệm. Vui lòng truy cập Cách sử dụng chế độ thử nghiệm để biết thêm thông tin.
Không gọi loadAd
trên FBInterstitialAd khi quảng cáo đang hiển thị trên màn hình. Nếu cần tải một FBInterstitialAd khác để sử dụng sau này, bạn có thể làm như vậy sau khi người dùng đóng FBInterstitialAd hiện tại, chẳng hạn như trong lệnh gọi lại interstitialAdDidClose
.
Nếu muốn, bạn có thể thêm những hàm sau đây để xử lý các trường hợp khi người dùng hiển thị, nhấp vào hoặc đóng quảng cáo
func interstitialAdWillLogImpression(_ interstitialAd: FBInterstitialAd) {
print("The user sees the ad")
// Use this function as indication for a user's impression on the ad.
}
func interstitialAdDidClick(_ interstitialAd: FBInterstitialAd) {
print("The user clicked on the ad and will be taken to its destination")
// Use this function as indication for a user's click on the ad.
}
func interstitialAdWillClose(_ interstitialAd: FBInterstitialAd) {
print("The user clicked on the close button, the ad is just about to close")
// Consider to add code here to resume your app's flow
}
func interstitialAdDidClose(_ interstitialAd: FBInterstitialAd) {
print("The user clicked on the close button, the ad is just about to close")
// Consider to add code here to resume your app's flow
}
Thêm và triển khai hàm sau đây trong file triển khai Trình kiểm soát chế độ xem để xử lý lỗi tải quảng cáo
func interstitialAd(_ interstitialAd: FBInterstitialAd, didFailWithError error: Error) {
print("Interstitial ad failed to load with error: \(error.localizedDescription)")
}
Khi không có quảng cáo nào để hiển thị, interstitialAd:didFailWithError:
sẽ được gọi với error.code
được đặt là 1001
. Nếu sử dụng lớp trung gian hoặc báo cáo tùy chỉnh riêng, bạn nên kiểm tra giá trị mã và phát hiện trường hợp này. Bạn có thể chuyển đổi dự phòng sang một mạng quảng cáo khác trong trường hợp này. Tuy nhiên, không yêu cầu lại quảng cáo ngay sau đó.
NativeAdSample
khả dụng như một phần của SDK và có thể tìm được trong thư mục FBAudienceNetwork/samples
. Mở dự án có Xcode và chạy trên thiết bị hoặc trình mô phỏng.