AppXperience 1.9.5

AppXperience 1.9.5

测试已测试
语言语言 Obj-CObjective C
许可 商业
发布最后发布2014年12月

未认领 维护。



 
依赖
MKNetworkKit~> 0.85
SDWebImage~> 3.1
 

  • 作者
  • Nicolas Lauquin

简介

AppXperience是一个<струk:iOS框架 strengthen>,可以让您在您的应用内推广其他应用。它在iPad、iPhone 3、4和5上运行。界面是竖屏设计。SDK已在iOS5 & iOS6上经过验证。

有四种不同类型的广告单元可供选择

  • 一个插屏广告:全屏格式展示应用(您可以选择静态、动态或mp4)。您可以决定何时显示:当应用启动时...
  • 一个横幅广告:展示一个或多个应用。您决定何时显示。
  • 一个应用发现页面:按主题分类排列应用的Offerwall,包括详细模式。它可以作为一个模态视图或包含在标签栏中。
  • 一个应用发现详细页面:展示一类应用的Offerpage,以详细模式显示。它可以作为一个模态视图或包含在标签栏中。

演示项目

有iOS演示项目可供测试不同的用法和检查默认API密钥的配置。请确保您打开的是工作区("AppXperienceDemo.xcworkspace"),而不是项目。

用法

  • 在您的.h文件中导入头文件
#import <AppXperience/AppXperience.h>
  • 调用单例来设置您的开发者密钥
        //Set your own key if you have it
    [[AppXperience sharedManager] setDeveloperKey:@"ABCDEF"];

AppXperienceInterstitial

仅在用户有网络和服务可连接时,才会显示。如果出现问题,则不会困扰用户与不完整的屏幕。

       //Do your own loading if need to.
       [[AppXperience sharedManager] prepareInterstitialWithCompletion:^(UIViewController *interstitialViewController) {
              // We fetched with success the data, you can do post treatment data.
              // Present the interstitial when you are ready in our case with a presentViewController:
              [self presentViewController:interstitialViewController animated:YES completion:nil];
       } error:^(NSError *error) {
           // No network or server unavailable, we do not display the ad
       }];

AppXperienceBanner

仅在用户有网络和服务可连接时,才会显示。如果出现问题,则横幅视图不会被返回。您可以使用setframe在不同的位置显示横幅,在您的应用中。

       //Do your own loading if need to.
      [[AppXperience sharedManager] prepareBannerWithCompletion:^(UIView *view) {
        // We fetched with success the data, you can do post treatment data.
        // Present the banner when you are ready in our case with an addSubview:
        // It's a view, you are free to put them anywhere. Design on iPhone to be 640x100 and ipad:1536x122.
        [self.view addSubview:view];
    } error:^(NSError *error) {
        // No network or server unavailable, we do not display the ad
    }];

AppXperienceOfferwall

第一种方法:来自标签栏

     UIViewController *appXperienceVC = [[AppXperience sharedManager] offerWallViewControllerFromTabBar];

     //add it to your tabBarViewControllers
     self.tabBarController.viewControllers = @[xxx, appXperienceVC];

第二种方法:从模态视图

     UIViewController *offerWallViewController = [[AppXperience sharedManager] offerWallViewControllerFromModal];
     [self presentViewController:offerWallViewController animated:YES completion:nil];

数据预取

您可以启用数据预取,以便用户不会等待查看广告墙。

    // call this in your viewDidLoad or anyplace you want
    [[AppXperience sharedManager] prepareOrRefreshOfferWallDataWithCompletion:^(NSNumber *numberNewApps) {
        //Data are fetched correctly
        //numberNewApps : get the number of new apps since last fetch of data. Use this to notify the user. 
    } error:^(NSError *error) {
         // No network or server unavailable, loading failed
    }];

AppXperienceOfferpage

第一方式:从标签栏

     UIViewController *appXperienceVC = [[AppXperience sharedManager] offerPageViewControllerFromTabBar];

     //add it to your tabBarViewControllers
     self.tabBarController.viewControllers = @[xxx, appXperienceVC];

第二方式:从模态窗口

     UIViewController *offerPageViewController = [[AppXperience sharedManager] offerPageViewControllerFromModal];
     [self presentViewController:offerPageViewController animated:YES completion:nil];

数据预取

您可以使用数据预取功能,让您的用户无需等待即可查看广告墙。

    // call this in your viewDidLoad or anyplace you want
    [[AppXperience sharedManager] prepareOrRefreshOfferPageDataWithCompletion:^(NSNumber *numberNewApps) {
        //Data are fetched correctly
        //numberNewApps : get the number of new apps since last fetch of data. Use this to notify the user. 
    } error:^(NSError *error) {
         // No network or server unavailable, loading failed
    }];

调试

要显示日志,您需要在“构建设置”的“预处理器宏”中设置标志DEBUG=1

安装

Pod安装(推荐)

推荐通过CocoaPods进行安装。Pods可以让您在不到1分钟内将Appxperience集成到您的xCode项目中。
如果您还没有使用它,那么您应该使用它,因为手动管理框架会浪费您的时间(而不仅仅是AppXperience!)。

1) 创建或更新现有的podfile

如果不存在,请创建一个"Podfile"文件。该"Podfile"文件与您的*.xcodeproj文件处于同一级别。然后根据以下示例添加对AppXperience的依赖项(您可以将版本参数删除,以便始终使用最新版本的fmk)。

platform :ios, '5.0'
pod 'AppXperience', '~> 1.9.5'

2) 安装依赖项

现在您可以在项目中安装依赖项。

$ pod install

从现在开始,在构建项目时,请确保始终打开生成的Xcode工作空间(.xcworkspace),而不是项目文件。

3) 深入了解

至此,您已经准备好开始使用AppXperience了。只需导入所需类别的头文件即可开始使用!

这些是通过cocoapods的经典步骤,您会很容易地熟悉它们,但花一分钟阅读说明还是值得的:https://cocoapods.org.cn

手动安装

由于手动安装会使集成更加复杂且框架升级管理更加复杂,我们建议您使用“Pod安装”。如果您有充分的理由不使用它,以下是步骤

  • AppXperience.frameworkAppXperience.bundle添加到您的项目中。
  • 构建阶段中,确保它列在与二进制文件链接的库中,包括

    • QuartzCore.framework
    • CoreGraphics.framework
    • MediaPlayer.framework
    • CoreText.framework
    • ImageIO.framework (SDWebImage)
    • CFNetwork.framework (MKNetworking)
    • Security.framework (MKNetworking)
    • Foundation.framework(应该已经包含在其中)
    • UIKit.framework(应该已经包含在其中)
  • 构建设置

    • 框架搜索路径下,确保AppXperience.framework的(父)目录已列出。
    • 在您的目标中,在其他链接器标志下添加-ObjC-all_load

依赖

您只需导入以下两个项目中的文件

  • SDWebImage ~> 3.1(强大的图像缓存fkm - 使用ARC)

    只需下载发行版,并将“SDWebImage.framework”拖到您的项目中。

  • MKNetworkKit ~> 0.85 (强大的网络和缓存框架 - 使用ARC)

    官方安装程序仅支持pods,以下是步骤:

    • 下载 发布版本
    • 将包含所有头文件和源文件的 MKNetworkKit/MKNetworkKit/ 文件夹导入到您的项目中。

代码文档

请查看AppXperience.h的头文件,它们有文档说明且易于理解。