62 lines
1.6 KiB
Swift
62 lines
1.6 KiB
Swift
// GuruRewardedAd.swift
|
|
// Base class for rewarded ad implementations
|
|
// Corresponds to GuruRewardedAd.kt in Android implementation
|
|
|
|
import Foundation
|
|
import UIKit
|
|
|
|
public struct RewardedShowRequest {
|
|
public let placement: String?
|
|
|
|
public init(placement: String?) {
|
|
self.placement = placement
|
|
}
|
|
}
|
|
|
|
open class GuruRewardedAd: RelayAd {
|
|
public let adUnitId: String
|
|
public let adPlatform: AdPlatform
|
|
|
|
private let name: String
|
|
|
|
public let adType = AdType.Rewarded
|
|
|
|
public init(engineId: Int, adUnitId: String, adPlatform: AdPlatform) {
|
|
self.adUnitId = adUnitId
|
|
self.adPlatform = adPlatform
|
|
self.name = "[RWD-\(adPlatform)]"
|
|
super.init(engineId: engineId)
|
|
}
|
|
|
|
// MARK: - Logging Methods
|
|
public func logInfo(_ message: String) {
|
|
Logger.i(tag: "RWD-\(adPlatform.name)[\(adUnitId)]", message: message)
|
|
}
|
|
|
|
public func logWarn(_ message: String) {
|
|
Logger.w(tag: "RWD-\(adPlatform.name)[\(adUnitId)]", message: message)
|
|
}
|
|
|
|
public func logDebug(_ message: String) {
|
|
Logger.d(tag: "RWD-\(adPlatform.name)[\(adUnitId)]", message: message)
|
|
}
|
|
|
|
public func logError(_ message: String) {
|
|
Logger.e(tag: "RWD-\(adPlatform.name)[\(adUnitId)]", message: message)
|
|
}
|
|
|
|
// MARK: - Methods to override
|
|
|
|
open func load() -> Bool {
|
|
fatalError("Subclass must implement")
|
|
}
|
|
|
|
open func show(_ request: RewardedShowRequest? = nil) -> Bool {
|
|
fatalError("Subclass must implement")
|
|
}
|
|
|
|
open func destroy() -> Bool {
|
|
fatalError("Subclass must implement")
|
|
}
|
|
}
|