手动集成
手动添加 SDK 并配置项目以启用 Offerwall 功能,即可将 Tapjoy Offerwall 集成到 iOS 应用中。
阅读时间5 分钟最后更新于 25 天前
下载 SDK
为了与应用集成,第一步是下载 iOS SDK 本身。将 SDK 添加到您的项目中
解压缩 SDK 后,您将发现有文档、库和 TapjoyEasyApp。 “TapjoyEasyApp”是一个用于演示 Tapjoy 集成方法的示例项目。您将 Tapjoy 集成到自己的应用程序中时并不需要这个示例项目,但可以将它作为有用的参考。 要将文件添加到项目中,请选择“File(文件)”和“Add files to Project(将文件添加到项目中)”。导航到“Libraries”文件夹,然后选择Tapjoy.xcframeworkOther Linker Flags (OTHER_LDFLAGS)-ObjC添加需要的框架
下一步是将需要的框架添加到您的项目中。为此,请单击 Project Navigator(项目导航器)中的项目图标,然后选择“Build Phases(构建阶段)”,展开“Link Binary With Libraries(链接二进制文件与库)”,然后单击该部分左下角的“+”符号。框架按字母顺序列出,可以按住 CMD 键来选择多个框架,从而在一个步骤中添加所有这些框架。 将以下所有框架添加到您的项目中:- AdSupport
- CFNetwork
- CoreTelephony
- StoreKit
- SystemConfiguration
- UIKit
- WebKit
- libc++
- libz
请求应用追踪透明度授权
如果应用程序需要使用应用追踪透明度框架,为了显示 IDFA 访问权限请求对话框,请更新 Info.plist,在其中包含NSUserTrackingUsageDescription<key>NSUserTrackingUsageDescription</key><string>This allows us to deliver personalized ads for you.</string>


AppTrackingTransparencyrequestTrackingAuthorizationWithCompletionHandler:requestTrackingAuthorization#import <AppTrackingTransparency/AppTrackingTransparency.h> ... - (void)fetchTrackingAuthorization { [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { // Call the Offerwall connect function here. }]; }
连接到 Tapjoy
下一步是将 Tapjoy connect 代码添加到您的应用程序中。这段关键代码将在应用程序中“激活”Offerwall SDK。
为了实现 Tapjoy connect 调用,需要为要集成的应用程序提供 Offerwall SDK 密钥。要查找此密钥,请在 Tapjoy 后台中导航到您的应用程序,然后单击顶部导航栏上的“Settings(设置)”按钮。导航到“App Settings(应用设置)”,然后在页面底部找到 SDK 密钥。
现在,将以下代码片段放到应用程序的应用委托文件中的
application:didFinishLaunchingWithOptions- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tjcConnectSuccess:) name:TJC_CONNECT_SUCCESS object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tjcConnectFail:) name:TJC_CONNECT_FAILED object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tjcConnectWarning:) name:TJC_CONNECT_WARNING object:nil]; //Turn on Tapjoy debug mode [Tapjoy setLoggingLevel:TJLoggerLevelDebug]; //Only enable debug mode for development.Disable it before publishing your app. //If you are using Self-Managed currency, you need to set a user ID using the connect flags. NSDictionary *connectFlags = @{TJC_OPTION_USER_ID : @"<USER_ID_HERE>"}; [Tapjoy connect:@"SDK_KEY_GOES_HERE" options:connectFlags]; //If you are not using connect flags, you can omit them [Tapjoy connect:@"SDK_KEY_GOES_HERE"]; return YES;}
setLoggingLevel连接通知
为了在 Tapjoy 成功连接、已连接但有警告或连接失败时收到相关通知,您需要实现我们先前设置为选择器的方法。当连接过程中出现非阻塞问题时,connectWarningconnectSuccess- (void)tjcConnectSuccess:(NSNotification *)notifyObj { NSLog(@"Tapjoy connect succeeded"); }- (void)tjcConnectFail:(NSNotification *)notifyObj { NSLog(@"Tapjoy connect failed");}- (void)tjcConnectWarning:(NSNotification *)notifyObj { NSError *error = notifyObj.userInfo[TJC_CONNECT_USER_INFO_ERROR]; NSError *underlyingError = error.userInfo[NSUnderlyingErrorKey];}
在 Tapjoy 后台中,如果单击顶部导航栏中的“Analytics(分析)”,然后单击左侧导航栏中的“Real-time(实时)”选项卡,则会在运行应用程序后不久显示应用程序的活动。2020-01-29 16:01:55.422 Storyteller Roller[25869:1433019] [TJLog level: 4] Connect success with type:0