测试已测试 | ✓ |
Lang语言 | Obj-CObjective C |
许可证 | MIT |
发布上次发布 | 2016 年 5 月 |
由 Jerry Kalkhof,Danny Favela,Fabio Teles,Alexander_Dovbnya 维护。
Lootsie 是一个移动奖励平台。在本指南中,我将指导您如何通过我们的平台进行基本集成。
Lootsie iOS SDK 版本 5.0 采用模块化结构设计,易于配置、扩展和自定义。
Lootsie 服务正在积极开发中,并将很快提供许多新功能。SDK 将随着新模块的增长而发展,但用户始终可以选择仅将应用程序中使用的模块链接到其中。
当前 SDK 结构包括 Common 模块、成就、奖励市场、奖励视频广告、用户账户管理 模块。
本文档通过快速入门步骤指南,提供详细的安装和使用说明。
第 1 步:创建项目目录。在那里创建 podfile 并添加内容
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
pod 'LTLootsie', '~> 5'
第 2 步:在项目目录中运行命令
# pod install
第 1 步:创建项目目录。在那里创建 podfile 并添加内容
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
pod 'LTLootsie', '~> 5'
步骤 2:在项目目录中运行命令
# pod install
奖励视频广告模块默认配置为从 AdMob 网络获取视频广告。
SDK 包括 Common 模块、成就、奖励市场、奖励视频广告、用户账户管理模块。Common 模块提供主要功能,所有其他模块都依赖于它,并包含常用实用程序函数。除了 Common 模块之外,所有模块都包含在 LTModule 文件夹中。每个模块都包含 UI 和 Core 文件夹
UI 文件夹依赖于 Core 文件夹。白标开发者不能在没有 UI 文件夹的情况下使用 Core 文件夹。
通用模块对项目至关重要,因为其他模块都依赖于它。该模块结构相似,尽管其核心在LTLootsie文件夹内,而UI在LTModule文件夹内。
每个模块都包含UI和核心,具有相同的分区和模块依赖性。1.1) 通用模块的结构如下:LTLootsie/Core和LTLootsie/UI。为了启用模块的一部分,需要在Podfile中写入。
pod LTLootsie/Core
对于核心和
pod LTLootsie/UI
如果有必要为当前模块添加UI
1.2) 成就模块。该模块与通用模块具有相同的分区
pod LTLootsie/AchievementCore
pod LTLootsie/AchievementUI.
1.3) 市场模块。该模块与通用模块具有相同的分区
pod LTLootsie/MarketplaceCore
pod LTLootsie/MarketplaceUI.
1.4) 插屏模块。该模块应包含Lootsie的UI,并可能取决于广告SDK。如果应使用AdMob SDK,则应添加以下数据。
pod LTLootsie/AdMob
如果使用Aerserv SDK,则应添加以下内容。
pod LTLootsie/Aerserv
1.5) 账户模块。该模块与通用模块具有相同的分区:LTLootsie/AccountCore和LTLootsie/AccountUI。
pod LTLootsie/AccountCore
pod LTLootsie/AccountUI.
在您的info.plist文件中添加这些键。(自iOS 9.0以来与App Transport Security相关。)它们指定了每个域所需的异常,以便您的应用程序可以成功加载奖励的图像。
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
完成!现在,每次用户打开您的应用程序时,该行代码都会使Lootsie SDK通知API当前用户刚获得奖励。如果在您的应用程序运行时,您应该看到一条包含您刚达到的成就的所有信息的IAN(应用程序内通知)下来。通过点击它,您应该被带到Lootsie奖励页面。
模块启用。
1) 为了启用< ترین>通用模块,需要在项目中添加源代码,可从中找到https://bitbucket.org/LootsieIOS/ios-sdk
2) 为了启用< strong>成就,需要将通用模块添加到项目中,并在构建设置>预处理器宏中将ENABLE_ACHIEVEMENT=1宏一起添加。
https://bitbucket.org/lootsie/ios-sdk-5-achievements
3) 为了启用< strong>市场模块,需要将通用模块添加到项目中,并在构建设置>预处理器宏中将ENABLE_MARKETPLACE=1宏一起添加。
https://bitbucket.org/lootsie/ios-sdk-5-rewards
4) 为了启用< strong>插屏模块,需要启用市场模块和成就模块。还需要将构建设置>预处理器宏中的ENABLE_INTERSTITIAL=1宏添加。
https://bitbucket.org/lootsie/ios-sdk-5-video-reward
4.1) 为了将< strong>AdMob添加到项目,请转到构建设置>预处理器宏,并为所有目标添加USE_ADMOB。USE_ADMOB是一个定义,它为编译器定义了为了AdMob的使用向项目添加什么。
4.2) 为了将< strong>AerServ添加到项目,请转到构建设置>预处理器宏,并为所有目标添加USE_AERSERV。USE_AERSERV是一个定义,它为编译器定义了为了AerServ的使用向项目添加什么。此外,在Xcode中设置Other Link Flag = -ObjC,并添加libxml2.2.dylib。
5) 为了启用< strong>会计模块,需要将通用模块添加到项目中,并在构建设置>预处理器宏中将ENABLE_ACCOUNT=1宏一起添加。
https://bitbucket.org/lootsie/ios-sdk-5-account
“Lootsie SDK”使用主管理类以执行您应用程序中所需的大多数操作。要获取管理器的引用,请输入 [LTUIManager sharedManager]
。从现在起,直到“用法”部分结束,我们将使用这种格式,但请注意,如果您是白标签开发人员并且您只使用 Core
cocoapodsubspection,或者您在手动安装期间只是复制了 LTLootsie 文件夹,则应在获取管理器引用时使用 [LTManager sharedManager]
。
要初始化“Lootsie SDK”,您需要设置中的“APP KEY”,在步骤 #设置新应用程序#完成之前创建。打开您的 AppDelegate
实现文件,在从 application:didFinishLaunchingWithOptions:
返回之前添加以下代码。此外,UI 管理器也应该被初始化。
let appKey = "YOUR-APP-KEY-HERE"
LTUIManager.sharedManager()
LTManager.sharedManager().startEngineWithAppKey(appKey, success: nil, failure: nil)
NSString *appKey = @"YOUR-APP-KEY-HERE";
[LTUIManager sharedManager];
[[LTManager sharedManager] startEngineWithAppKey:appKey success:nil failure:nil];
请注意,此调用还接收用于处理成功和失败情况的可选块。这是整个 SDK 中采用的标准模式。因此,每次您调用可能访问互联网以检索您请求的结果的方法时,它都将为您提供传递块以处理成功和失败情况的选择。
此操作不会触发任何网络调用,但它将保存递归初始化所需的信息。如果有需要初始化“Lootsie SDK”的事件发生,例如:用户达到成就,它将触发初始化过程,然后再执行刚才发生的事件。
如果您正在使用 LTUIManager
,则可以使用名为 LTUIManagerDelegate
的协议参与界面如何显示在您的应用程序之上,以及何时发生的情况。您可以在即将显示时和一旦消失时通知。
下面是一个示例,演示了如何在子视图中显示“Lootsie”的界面,如何在界面显示时暂停游戏,并在之后重新开始。
首先,遵守协议
class AppDelegate: UIResponder, UIApplicationDelegate, LTUIManagerDelegate
@interface AppDelegate () <LTUIManagerDelegate>
// ...
@end
然后实现您想要的代理方法
func lootsieUIManagerWillShowUI() {
gameController.pause()
}
func lootsieUIManagerDidCloseUI() {
gameController.resume()
}
func presentationContextForUIManager() -> UIViewController {
return childViewController;
}
- (void)lootsieUIManagerWillShowUI {
[self.gameController pause];
}
- (void)lootsieUIManagerDidCloseUI {
[self.gameController resume];
}
- (UIViewController *)presentationContextForUIManager {
- return self.childViewController;
- }
以下是一个示例,说明如何设置按钮的动作,以显示“Lootsie”奖励页。
@IBAction func showLootsieRewards(sender: AnyObject) {
LTUIManager.sharedManager().showRewardsPage()
}
- (IBAction)showLootsieRewards: (id)sender {
[[LTUIManager sharedInstance] showRewardsPage];
}
点击与此 IBAction 链接的按钮将在奖励页面上显示“Lootsie”的界面。干得好!您可以通过在 LTUIManager
类中检查可用的方法来查看更多界面选项。
我们将展示的最后一步是告诉Lootsie的API用户已达成成就,以便他们可以受到奖励。
为此,我们将使用您之前创建的成就,API ID为launch,在“设置新应用”步骤中。为此,请再次打开AppDelegate
实现文件,并将以下代码放在Lootsie初始化代码之后。
LTUIManager.sharedManager().reportAchievementWithId("launch", success: nil, failure: nil)
[[LTUIManager sharedManager] reportAchievementWithId:@"launch" success:nil failure:nil];
完成!现在,每次用户打开您的应用程序时,该行代码都会使Lootsie SDK通知API当前用户刚获得奖励。如果在您的应用程序运行时,您应该看到一条包含您刚达到的成就的所有信息的IAN(应用程序内通知)下来。通过点击它,您应该被带到Lootsie奖励页面。
经过此基本集成后,您可以通过打开LTUIManager
和LTManager
类来探索我们的SDK,查看默认提供哪些功能。您还应在代码中找到一些文档,描述方法调用和参数。以下是一些您可以做的亮点:
LTLootsie遵照MIT许可发布。有关详情,请参阅LICENSE。