我正在尝试更新我的 Google AdMob 帐户,因为 Apple 宣布了一个新的透明度框架,该框架要求随着 iOS 14 的发布对 iOS 应用程序进行更改。我将我的 Google AdMob pod 更新到了最新版本 (7.64.0)。但是,当我尝试在 App Delegate 中使用以下代码时:-
import AppTrackingTransparency
import AdSupport
...
func requestIDFA() {
ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in
// Tracking authorization completed. Start loading ads here.
// loadAd()
})
}
我收到以下错误:-No such module 'AppTrackingTransparency'
任何帮助将不胜感激!!🙏
最佳答案
它仅从 Xcode 12 开始可用,包括 beta 版本。
并使用它
import AppTrackingTransparency
import AdSupport
if #available(iOS 14, *) {
ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in
// Load ads here
})
} else {
// Load ads here
}
RewardedVideoAdsManager 示例class RewardedVideoAdsManager: GADRewardedAd {
static let shared = RewardedVideoAdsManager()
var rewardedAd: GADRewardedAd?
func createAndLoadRewardedAd(unitId: String) -> GADRewardedAd? {
rewardedAd = GADRewardedAd(adUnitID: unitId)
let myRequest = GADRequest()
rewardedAd?.load(myRequest) { error in
if let error = error {
print("Loading failed: \(error)")
} else {
print("Loading Succeeded")
}
}
return rewardedAd
}
}在我的 AppDelegate 或第一个主屏幕中
if #available(iOS 14, *) {
ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in
RewardedVideoAdsManager.shared.rewardedAd = RewardedVideoAdsManager.shared.createAndLoadRewardedAd(unitId: "ca-app-pub-8175294120313121/4011630802")
})
} else {
RewardedVideoAdsManager.shared.rewardedAd = RewardedVideoAdsManager.shared.createAndLoadRewardedAd(unitId: "ca-app-pub-8175294120313121/4011630802")
}
关于ios - 没有这样的模块 'AppTrackingTransparency' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63516131/