Hướng dẫn này dành cho các nhà xuất bản iOS muốn thêm tính năng phát quảng cáo âm thanh trong nền vào quá trình triển khai SDK IMA của họ. Điều này cho phép ứng dụng yêu cầu quảng cáo trong nền. Việc này cũng cho phép ứng dụng chuyển sang chạy ở chế độ nền và tiếp tục phát quảng cáo đến hết.
Bạn không nên phát quảng cáo dạng video trong nền.
Điều kiện tiên quyết
- Ứng dụng iOS có triển khai SDK IMA.
- SDK IMA V3 Beta phiên bản 13 trở lên.
Các đoạn mồi hữu ích
Nếu bạn vẫn cần triển khai SDK IMA trong ứng dụng của mình, hãy xem Hướng dẫn bắt đầu sử dụng của chúng tôi.
Thêm tính năng phát quảng cáo trong nền vào ứng dụng của bạn
Việc thêm tính năng phát quảng cáo trong nền cần thực hiện các bước sau:
- Bật chế độ nền Âm thanh và Airplay. Trong Xcode 6, hãy chọn một mục tiêu, sau đó trong phần Khả năng > Chế độ nền, bật "Âm thanh và Phát âm thanh".
- Kích hoạt
AVAudioSession
và đặt danh mục của lớp đó bằngAVAudioSessionCategory
có thể phát âm thanh nền, chẳng hạn nhưAVAudioSessionCategoryPlayback
. - Tạo
IMAAdsLoader
, truyền vào đối tượngIMASettings
cóenableBackgroundPlayback
được đặt thànhYES
.
- (void)viewDidLoad { [super viewDidLoad]; NSError *error; [[AVAudioSession sharedInstance] setActive:YES error:&error]; if (error != nil) { NSLog(@"Error: %@", error.localizedDescription); } [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error]; if (error != nil) { NSLog(@"Error: %@", error.localizedDescription); } }
IMASettings *settings = [[IMASettings alloc] init]; settings.enableBackgroundPlayback = YES; IMAAdsLoader *adsLoader = [[IMAAdsLoader alloc] initWithSettings:settings];
Quan trọng
Để thực hiện yêu cầu quảng cáo trong nền, nội dung của bạn phải đang phát. Có thể bạn sẽ phải gọi thủ công tính năng phát trên trình phát nội dung khi ứng dụng chuyển sang chạy trong nền trước khi gọi [IMAAdsLoader requestAds:]
.
Khi ứng dụng iOS chạy ở chế độ nền, hệ thống sẽ tự động tạm dừng việc phát quảng cáo. Nếu ứng dụng của bạn chạy ở chế độ nền trong khi phát quảng cáo, thì bạn cần gọi [IMAAdsManager resume]
để tiếp tục phát.
Câu hỏi thường gặp
- Điều gì xảy ra nếu tôi không bật tính năng chế độ nền Âm thanh và Airplay trong ứng dụng của mình?
- Nếu bạn không chọn chế độ này, mọi âm thanh mà ứng dụng phát sẽ dừng khi ứng dụng chuyển sang chạy trong nền. Ứng dụng cũng không chạy được âm thanh khi ở chế độ nền.