swift - 奖励视频广告在我的标签上显示奖励内容

标签 swift xcode admob nsuserdefaults admob-rewardedvideoad

我正在开发一款带有 Admob 奖励视频广告的应用。 我想知道用户何时单击按钮来奖励他们。 我做了这个,但我的问题是,当我第二次点击播放广告按钮时,我当前的(标签上的货币)不加上新的,它只会得到新的 100 而不是(当前 + 100)。 我只想让我的(当前)货币(+100)。 你们能帮帮我吗?请....

struct Keys {
    static var currency = "Currency"
    static var currentCurr = "CurrentCurrency"
}

class ViewController: UIViewController, GADRewardBasedVideoAdDelegate {

    var currency = 0
    var userDefault = UserDefaults.standard

    @IBOutlet weak var currencyShower: UILabel!
    override func viewDidLoad() {
        super.viewDidLoad()

        GADRewardBasedVideoAd.sharedInstance().load(GADRequest(), withAdUnitID: "ca-app-pub-3940256099942544/1712485313")
        GADRewardBasedVideoAd.sharedInstance().delegate = self

        if userDefault.string(forKey: Keys.currency) != nil {
            currencyShower.text = userDefault.string(forKey: Keys.currency)
        } else {
            return
        }
    }
    //
    @IBOutlet weak var playAdOut: UIButton!
    @IBAction func playAd(_ sender: UIButton) {
        if GADRewardBasedVideoAd.sharedInstance().isReady == true {
            GADRewardBasedVideoAd.sharedInstance().present(fromRootViewController: self)
        } else {
            print("Video Did not Load...")
        }
    }

    func rewardBasedVideoAdDidClose(_ rewardBasedVideoAd: GADRewardBasedVideoAd) {
        print("Video is Ready")
        GADRewardBasedVideoAd.sharedInstance().load(GADRequest(),
                                                    withAdUnitID: "ca-app-pub-3940256099942544/1712485313")
    }
    func rewardBasedVideoAd(_ rewardBasedVideoAd: GADRewardBasedVideoAd, didFailToLoadWithError error: Error) {
        print("Error When Loading")
    }
    func rewardBasedVideoAd(_ rewardBasedVideoAd: GADRewardBasedVideoAd, didRewardUserWith reward: GADAdReward) {
        currency += 100
        currencyShower.text = String(currency)
    }
}

最佳答案

您可以将货币值保存到 UserDefaults,然后在需要时检索或更新它,例如以下链接:example

PS!如果您不想将字符串保存到 userDefaults,您也可以保存数字。

关于swift - 奖励视频广告在我的标签上显示奖励内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57027058/

相关文章:

ios - Swift 2 :IBOutlet Collection [UIButton]! 内存泄漏

swift - Xcode UI 测试 如何处理 UNUserNotificationCenter 生成的通知权限

iphone - 为什么我的文件不移动到 "en.lproj",而是移动到 Xcode 中 "English.lproj"之后的新 "Make file Localizable"?

ios - 如何使用 Swift 更改 iOS 中 UIButton 的状态?

android - 如何以编程方式获取 Admob 的设备 ID?

Swift 函数数组

ios - BGAppRefreshTask后台任务未执行

ios - 使用 SKAction.scale 更改 Sprite 的比例

java - 插页式广告未展示

lua - Corona SDK 上的 Admob Interstitial 仅显示一次