CJPAdController 1.7.1

CJPAdController 1.7.1

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布最后发布2015 年 9 月

Chris Phillips 维护。




CJPAdController 1.7.1

CJPAdController 是一个单例类,允许在您的 iOS 应用中轻松实现 iAd 和 Google AdMob 广告。它支持所有设备和方向,且在 iOS 6.0+ 上运行。

特性

  • 选择是否同时显示 iAd 和 AdMob,或者只显示其中一个
  • 选择 iAd 或 AdMob 是否为您的默认广告,当默认广告无法加载广告时回退到另一个
  • 选择在视图的顶部或底部显示广告
  • 指定在视图中开始显示广告的时间延迟
  • 如果没有广告要显示,则自动隐藏
  • 支持隐藏广告给已购买“去除广告”内部购买的用户的选项(假设您在 NSUserDefaults 中存储了该布尔值)

操作系统/设备兼容性

  • 在 iOS >= 6.x 上运行(如果您需要支持 iOS 5.x,请使用 v1.6.3)
  • 在所有 iPhone 和 iPad 屏幕大小上运行,无论在横屏还是竖屏方向

屏幕截图

CJPAdController screenshot CJPAdController screenshot

CJPAdController screenshot CJPAdController screenshot

将项目添加到您的项目中

方法 2 - 旧式

1.CJPAdControllerGoogleMobileAdsSdk 文件夹拖到您的项目中。注意:您可能希望检查是否有更新的 AdMob SDK 可用,您至少需要版本 7.0.0。

2. 如果您正在做一个新项目,您可能不需要执行任何其他操作。如果它是一个旧项目,则根据其设置,您可能需要手动链接所有必要的框架,如果是这样的话,请确保以下框架已链接到您的项目

对于 iAd

  1. iAd.framework
  2. AdSupport.framework

对于 AdMob

  1. AudioToolbox.framework
  2. AVFoundation.framework
  3. CoreGraphics.framework
  4. CoreTelephony.framework
  5. MessageUI.framework
  6. StoreKit.framework
  7. SystemConfiguration.framework
  8. EventKit.framework
  9. EventKitUI.framework

使用方法

CJPAdController 会在您的视图的顶部或底部自动显示广告。它旨在与 UINavigationController 或 UITabBarController 一起使用。

1. 在您的 AppDelegate.m 中包含 #import "CJPAdController.h"

2.applicationDidFinishLaunchingWithOptions 中,使用单例( sharedInstance)根据您的喜好配置 CJPAdController

    [CJPAdController sharedInstance].adNetworks = @[@(CJPAdNetworkiAd), @(CJPAdNetworkAdMob)];
    [CJPAdController sharedInstance].adPosition = CJPAdPositionBottom;
    [CJPAdController sharedInstance].initialDelay = 2.0;
    // AdMob specific
    [CJPAdController sharedInstance].adMobUnitID = @"ca-app-pub-1234567890987654/1234567890";

3. 按照常规设置您的导航/标签栏控制器,然后告诉 CJPAdController 在其中开始展示广告。

    [[CJPAdController sharedInstance] startWithViewController:_yourNavController];

4. 还有一点……您需要将窗口的根视图控制器设置为 CJPAdController 的单例。

    self.window.rootViewController = [CJPAdController sharedInstance];

配置选项

选择使用的广告网络以及首选网络

CJPAdController 假定您将同时使用 iAd 和 AdMob,因为这个类就是为此而编写的。默认情况下都将使用,且 iAd 将作为首选选项。您可以通过以不同的顺序传递数组(数组中的第一个值将设置为您的首选广告)来覆盖此设置,如果您愿意,甚至可以排除其中一个网络。

[CJPAdController sharedInstance].adNetworks = @[@(CJPAdNetworkAdMob), @(CJPAdNetworkiAd)];

选择广告的位置

默认情况下,广告将从视图底部向上滑动并固定在那里。或者,您也可以将其反向,让广告从顶部向下滑动并固定在视图顶部。

[CJPAdController sharedInstance].adPosition = CJPAdPositionTop;

延迟在应用启动后展示广告

默认情况下,广告将在您的应用启动时立即请求。您可以通过提供 NSTimeInterval 延迟,以下代码将等待您的应用启动后2秒再请求广告。

[CJPAdController sharedInstance].initialDelay = 2.0;

在自定义视图中使用

如果您尝试在一个不是 UINavigationController 或 UITabBarController 子类的自定义视图中实现 CJPAdController,您可能会遇到广告无法正确显示或完全不显示的问题。在这种情况下,可以重写 isNavController 属性,一些用户已成功实现。

[CJPAdController sharedInstance].overrideIsNavController = YES;

更多信息

还有一些特定于 AdMob 的选项可以进行配置,以及一些用于隐藏、删除、恢复广告等的一般方法。AdMob 广告也可以根据用户的年龄、性别和位置进行定向。在使用任何这些功能之前,请先阅读头文件中的注释。您可以在示例项目中看到这些示例,此外,头文件也有很好的注释,包含每个方法的功能以及如何在测试或生产中使用它们。

许可证和归属权

如果您觉得好,可以提供归属和链接到 这个 GitHub 项目

许可证

版权(c)2011-2015 Chris Phillips

特此授予任何人(在此以下简称“您”)免费获得包括本软件及其相关文档文件(以下简称“软件”)副本的权利,不受限制地处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、转许可和/或销售软件的副本,并允许接受软件的人(以下简称“接受者”)进行上述行为,前提是

上述版权声明和许可声明应在软件的所有副本或主要部分中包含。

软件按“原样”提供,不提供任何形式的保证,包括但不限于对适销性、特定用途的适用性和非侵权性的保证。在任何情况下,作者或版权持有人不对任何索赔、损害或其他责任承担义务,无论该责任源于合同行为、侵权行为或其他方式,也不管该责任是否与软件、软件的使用或其他与软件相关的事项有关。