Как быстро добавить FbNative с помощью модуля FBAudienceNetwork?
Я новичок в Swift и пытаюсь добавить FaceBookNative в проект Swift, но я не нашел руководства для быстрого
Я добавил модуль FBAudienceNetwork в свой проект, но у меня все еще есть некоторые проблемы.
Мне нужен SDK для фреймворка, если добавлен Pod, нужно ли мне создавать интеграцию файлов Bridging Есть ли тестовый идентификатор, доступный для добавления t show, прежде чем приложение будет запущено
Я создал формат для собственного добавления в раскадровке, импортировал FBAudienceNetwork в контроллер представления и реализовал
что, если мне нужны мои добавления в ячейку tableview
Любая ссылка на полное руководство или любой вспомогательный контент будут приняты
Спасибо заранее
import UIKit
class SingleAdsViewController: UIViewController, FBNativeAdDelegate {
@IBOutlet weak var viewAdContainer: UIView!
@IBOutlet weak var lblAdTitle: UILabel!
@IBOutlet weak var lblAdBody: UILabel!
@IBOutlet weak var imgAdIcon: UIImageView!
@IBOutlet weak var btnAdAction: UIButton!
@IBOutlet weak var lblSocialContext: UILabel!
var nativeAd: FBNativeAd!
var coverMediaView: FBMediaView!
override func viewDidLoad() {
super.viewDidLoad()
//viewAdContainer.isHidden = true
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func loadNativeAd(sender: AnyObject) {
nativeAd = FBNativeAd(placementID: "ca-app-pub-39402560*99425*4/39866*****")
nativeAd.delegate = self
nativeAd.load()
}
// MARK: Custom Methods
func handleLoadedNativeAdUsingCustomViews() {
// Set the ad title.
lblAdTitle.text = nativeAd.title
// Set the ad body (if exists).
if let body = nativeAd.body {
lblAdBody.text = body
}
// Set the title of the call-to-action button.
btnAdAction.setTitle(nativeAd.callToAction, for: [])
// Load and display the ad icon image.
nativeAd.icon?.loadAsync(block: { (iconImage) in
if let image = iconImage {
self.imgAdIcon.image = image
}
})
// Create a cover media view and assign the native ad object to it (it will display image(s) or video, depending on what ad contains).
let yPoint = lblAdBody.frame.origin.y + lblAdBody.frame.size.height + 8.0
let coverMediaViewFrame = CGRect(x: lblAdBody.frame.origin.x, y: yPoint, width: lblAdBody.frame.size.width, height: lblSocialContext.frame.origin.y - yPoint - 8.0)
let coverMediaView = FBMediaView(frame: coverMediaViewFrame)
coverMediaView.clipsToBounds = true
coverMediaView.nativeAd = nativeAd
viewAdContainer.addSubview(coverMediaView)
// Set the social context title (if exists).
if let socialContext = nativeAd.socialContext {
lblSocialContext.text = socialContext
}
// Add the AdChoices view.
let adChoicesView = FBAdChoicesView(nativeAd: nativeAd)
viewAdContainer.addSubview(adChoicesView)
adChoicesView.updateFrameFromSuperview()
// Use this to make the whole ad container view interact when tapping.
nativeAd.registerView(forInteraction: viewAdContainer, with: self)
// Use this to make the call-to-action interactive only.
nativeAd.registerView(forInteraction: viewAdContainer, with: self, withClickableViews: [btnAdAction])
// Make the native ad view container visible.
viewAdContainer.isHidden = false
}
func handleLoadedNativeAdUsingTemplate() {
let attributes = FBNativeAdViewAttributes()
attributes.buttonColor = UIColor.magenta
attributes.buttonTitleColor = UIColor.yellow
attributes.backgroundColor = UIColor.purple
attributes.titleFont = UIFont(name: "Noteworthy", size: 20.0)
attributes.titleColor = UIColor.white
attributes.buttonTitleFont = UIFont(name: "Futura", size: 12.0)
attributes.descriptionColor = UIColor.white
let nativeAdView = FBNativeAdView(nativeAd: nativeAd, with: FBNativeAdViewType.genericHeight300, with: attributes)
_ = FBNativeAdView(nativeAd: nativeAd, with: FBNativeAdViewType.genericHeight300)
nativeAdView.frame = CGRect(x: 20.0, y: 100.0, width: UIScreen.main.bounds.size.width - 40.0, height: 300.0)
self.view.addSubview(nativeAdView)
nativeAd.registerView(forInteraction: nativeAdView, with: self)
}
// MARK: FBNativeAdDelegate Methods
func nativeAdDidLoad(_ nativeAd: FBNativeAd) {
handleLoadedNativeAdUsingCustomViews()
handleLoadedNativeAdUsingTemplate()
}
private func nativeAd(nativeAd: FBNativeAd, didFailWithError error: NSError) {
print(error)
}
func nativeAdDidClick(_ nativeAd: FBNativeAd) {
print("Did tap on the ad")
}
}