Objective-C


引入 SDK

#import

 

@interface ViewController ()

@property (nonatomic, strong) MFBannerView *bannerView;

@end

@implementation ViewController

- (void)viewDidLoad {

    [super viewDidLoad];

    

    CGPoint point = CGPointMake((self.view.frame.size.width-320)/2, self.view.frame.size.height-50);

    self.bannerView = [[MFBannerView alloc] initWithAdType:MFAdType.banner320x50 origin:point bannerId:@"21958"];

    self.bannerView.delegate = self;

    

    [self.view addSubview:self.bannerView];

    [self.bannerView setAdAutoRefresh:YES];

    [self.bannerView debugInfo:@"info"];

    

}

- (IBAction)reqAdAction:(UIButton *)sender {

    

    // 請求廣告

    [self.bannerView requestAd];

}

 

 

 

// 移除廣告

- (IBAction)releseAdAction:(UIButton *)sender {

    

    [self.bannerView releseADWithCallback:^(BOOL state) {

        if (state) {

            NSLog(@"bye");

        }

    }];

}

 


// 廣告請求成功

- (void)requestAdSuccess {

    NSLog(@"廣告請求成功");

    [self.bannerView show];

}

// 廣告請求失敗

- (void)requestAdFail {

    NSLog(@"廣告請求失敗");

}

// 廣告被點擊

- (void)onClickAd:(NSString *)urlStr {

    NSLog(@"點擊廣告 URL: %@", urlStr);

    NSURL *url = [NSURL URLWithString:urlStr];

    if (url) {

        NSString *path = [url path];

        NSLog(@"%@", path);

    }

}

 


- (void)onCloseAd {

    NSLog(@"關閉廣告!");

}

 

 

 

@end

 

Swift

引入 SDK

import iMFAD

 

class ViewController: UIViewController {

    var bannerView: MFBannerView!

    

    override func viewDidLoad() {

        super.viewDidLoad()

        

        let point = CGPoint(x: (self.view.frame.size.width-320)/2, y: self.view.frame.size.height-50)

        bannerView = MFBannerView(adType: MFAdType.banner320x50, origin: point, bannerId: "21958")

        bannerView.delegate = self

        self.view.addSubview(bannerView)

        

        bannerView.setAdAutoRefresh(true)

        bannerView.debugInfo("info")

                

    }

    @IBAction func reqAdAction(_ sender: UIButton) {

        

        bannerView.requestAd()

    }

    

    @IBAction func releseAdAction(_ sender: UIButton) {

        

        bannerView.releseAD { state in

            if state {

                print("bye")

            }

        }

    }

    

}

extension ViewController: MFBannerDelegate {

    

    // 接收廣告成功

    func requestAdSuccess() {

        print("接收廣告成功!")

        self.bannerView.show()

    }

    

    // 接收廣告失敗

    func requestAdFail() {

        print("接收廣告失敗!")

    }

    

    // 點擊廣告

    func onClickAd(_ urlStr: String) {

            print("點擊廣告 URL: \(urlStr)")

            if let url = URL(string: urlStr) {

                let path = url.path

                print(path)

            }

    }

 


    func onCloseAd() {

        print("關閉廣告!")

    }

 


}

 

SwiftUI

引入 SDK

import iMFAD


struct ContentView: View {

    @ObservedObject var bannerController = BannerAdController()

    

    var body: some View {

        ZStack {

            VStack {

                HStack {

                    Button("請求廣告") {

                        bannerController.requestAd()

                    }

                    .padding()

                    .background(Color.blue.opacity(0.1))

                    .cornerRadius(8)

                    

                    Button("釋放廣告") {

                        bannerController.releaseAd()

                    }

                    .padding()

                    .background(Color.blue.opacity(0.1))

                    .cornerRadius(8)

                }

            }

        }

        .onAppear {

            

            DispatchQueue.main.async {

                if let windowScene = UIApplication.shared.connectedScenes.first as? UIWindowScene,

                   let window = windowScene.windows.first {

                    

                    let screenWidth = window.bounds.size.width

                    let screenHeight = window.bounds.size.height

                    let point = CGPoint(x: (screenWidth - 320) / 2, y: screenHeight - 50)

                    

                    let banner = MFBannerView(adType: MFAdType.banner320x50, origin: point, bannerId: "21958")

                    banner.delegate = bannerController

                    

                    window.addSubview(banner)

                    banner.setAdAutoRefresh(true)

                    banner.debugInfo("info")

                    bannerController.bannerView = banner

                }

            }

        }

    }

}

class BannerAdController: NSObject, ObservableObject, MFBannerDelegate {

    var bannerView: MFBannerView?

    

    // 請求廣告

    func requestAd() {

        bannerView?.requestAd()

    }

    

    // 釋放廣告

    func releaseAd() {

        bannerView?.releseAD { state in

            if state {

                print("bye")

            }

        }

    }

    

    // MARK: - MFBannerDelegate

    

    func requestAdSuccess() {

        print("接收廣告成功!")

        bannerView?.show()

    }

    

    func requestAdFail() {

        print("接收廣告失敗!")

    }

    

    func onClickAd() {

        print("點擊廣告!")

    }

}