Нет такой ошибки модуля "AppTrackingTransparency"
Aug 21 2020
Я пытаюсь обновить свою учетную запись Google AdMob, поскольку Apple объявила о новой структуре прозрачности, которая требует изменений в приложениях iOS с выпуском iOS 14. Я обновил свой модуль Google AdMob до последней версии (7.64.0). Но когда я пытаюсь использовать следующий код в делегате приложения: -
import AppTrackingTransparency
import AdSupport
...
func requestIDFA() {
ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in
// Tracking authorization completed. Start loading ads here.
// loadAd()
})
}
Я получаю следующую ошибку: -
No such module 'AppTrackingTransparency'
Любая помощь будет принята с благодарностью !! 🙏
Ответы
12 AhmedSafadi Aug 21 2020 at 16:15
он доступен только начиная с Xcode 12, включая бета-версию.
и использовать это
import AppTrackingTransparency
import AdSupport
if #available(iOS 14, *) {
ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in
// Load ads here
})
} else {
// Load ads here
}
Exmaple для 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 или First
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")
}