# SDK_OpenSDK
**Repository Path**: crazytone/SDK_OpenSDK
## Basic Information
- **Project Name**: SDK_OpenSDK
- **Description**: OpenSDK接入SuperSDK
- **Primary Language**: Objective-C
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 2
- **Created**: 2023-05-15
- **Last Updated**: 2023-05-15
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# SDK_OpenSDK
#### 项目介绍
OpenSDK+SuperSDK
OpenSDK包含多个(登录、支付)子模块,游戏方根据需要选择接入。具体请参考OpenSDK文档的[简介](https://gitee.com/wyky_ios/OpenSDK/blob/master/README.md)
##### 导入
1. 安装CocoaPods
2. 在项目根目录,输入`pod init`命令,创建Podfile
3. Podfile内容如下:
```
# Uncomment the next line to define a global platform for your project
install! 'cocoapods', :deterministic_uuids => false
source 'https://gitee.com/wyky_ios/Spec.git'
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
target '你的项目名' do
#指定SuperSDK资源
pod 'YCSuperSDK'
#指定OpenSDK资源、子模块(根据需要指定子模块)
pod 'YCOpenSDK', :subspecs => ['Framework', 'ApplePay']
#指定接入代码资源
pod 'SDK_OpenSDK'
end
```
5. 输入`pod install`命令,安装相关依赖
6. 打开新生成的.xcworkspace,进行后续的开发和调试
#### Info.plist配置
1. 添加SuperSDK相关参数的配置SSDKConfig
```
SSDKConfig
IS_LANDSCAPE
REMOTE_SDKCONFIG_ENABLE
SDK_CLASS
SSDKOpenSDK
SDK_INNER_VERSION
SuperSDK版本号,如0.0.4
SDK_VERSION
渠道资源版本号,如0.0.6
SSDK_CHANNEL_ID
SuperSDK渠道号,如IOS0002
SSDK_FRAMEWORK_VERSION
接入资源版本号,如0.0.2
SURL
SuperSDK服务器域名
```
如果某些参数不清楚,游戏方可以联系SuperSDK相关人员
2. 添加OpenSDK相关参数的配置OpenSDKConfig,[具体参考OpenSDK文档](具体请参考OpenSDK文档的[简介](https://gitee.com/wyky_ios/OpenSDK#infoplist%E9%85%8D%E7%BD%AE)
#### 工程配置
1. 在Build Settings -> Enable Bitcode设置成No
#### OpenSDK第三方支付配置
请参考OpenSDK文档的[第三方支付配置](https://gitee.com/wyky_ios/OpenSDK/blob/master/README.md)
#### 接入SuperSDK,要求修改项目的Application文件
```
#import “YCSuperSDK/libSuperSDK.h"
//在appDelegate中的对应函数中添加如下代码
- (void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo
{
[SuperSDK application:application didReceiveRemoteNotification:userInfo];
}
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
[SuperSDK application:application didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];
}
- (void)application:(UIApplication*)application didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
{
[SuperSDK application:application didFailToRegisterForRemoteNotificationsWithError:error];
}
- (BOOL)application:(UIApplication*)application openURL:(NSURL*)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotation
{
[SuperSDK application:application openURL:url sourceApplication:sourceApplication annotation:annotation];
return YES;
}
- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
[SuperSDK application:application didFinishLaunchingWithOptions:launchOptions];
return YES;
}
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
return [SuperSDK application:application handleOpenURL:url];
}
- (void)applicationDidEnterBackground:(UIApplication*)application
{
[SuperSDK applicationDidEnterBackground:application];
}
- (void)applicationWillEnterForeground:(UIApplication*)application
{
[SuperSDK applicationWillEnterForeground:application];
}
- (void)applicationDidBecomeActive:(UIApplication*)application
{
[SuperSDK applicationDidBecomeActive:application];
}
- (BOOL) application:(id)app openURL:(NSURL *)url options:(NSDictionary *)options
{
return [SuperSDK application:app openURL:url options:options];
}
- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
{
[SuperSDK application:application didRegisterUserNotificationSettings:notificationSettings];
}
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArray * __nullable restorableObjects))restorationHandler
{
[SuperSDK application:application continueUserActivity:userActivity];
return YES;
}
```
#### Unity方式接入SuperSDK
如果接入方是以Unity方式接入SuperSDK,请将SuperSDKConnector.h和SuperSDKConnector.m文件,添加进工程中。这2个文件主要包含了SuperSDK的IOS端和Unity端的交互逻辑。
文件下载地址:https://gitee.com/wyky_ios/SuperSDK/tree/master/Unity
#### 作者
- wangxudong
- jasontujun