SDK 下载和配置
SDK 下载
基本功能 SDK,包含登录支付等基础服务
稳定版(V3.4.9)
iOS SDK 下载:iOS_SDK_V3.4.9
更新说明:
- 新增风控SDK;
- 新增对外第三方登录、账号删除接口;
- 新增自定义UI弹窗资源配置;
- 优化SDK内部功能;
灰度版
【如需使用灰度版请和技术对接人员确认】iOS SDK 下载:iOS_SDK_V3.5.1_beta
更新说明:
- 新增日本特商法展示按钮;
- SDK内部功能优化;
越南版
【如需使用越南版请和技术对接人员确认】iOS SDK 下载:iOS_SDK_V3.5.0_beta
更新说明:
- 新增越南版SDK功能;
- 新增GlobalCoreVNLogin.bundle资源;
- 越南版需配置info.plist文件,GlobalVNSDK 为 YES;
环境要求
SDK 相关内容 | 说明 |
---|---|
支持平台 | iPod Touch、iPhone 和 iPad |
运行 iOS 系统 | 要求 iOS 11.0 以上 |
接入使用 Xcode | 要求版本为 15.4 以上 |
SDK 包内容
- SDK 目录说明
└── GlobalSuperUnion
├── .h
│ ├── SDKManager.h : SDK对接使用的类头文件
│ ├── SDKManager.swift : SDK的配置头文件
└
└──.a
│ ├── libGlobalSuperUnionSDK.a : SDK的静态库文件
└──.bundle
├── GlobalSuperUnionMainResource.bundle : SDK的资源文件
├── GlobalCoreResource.bundle : SDK的资源文件
├── LineSDKResource.bundle : 三方SDK的资源文件
├── NNGSDK.bundle : 三方SDK的资源文件
└── TwitterKitResources.bundle : 三方SDK的资源文件
└── DXCaptcha.bundle : 三方SDK的资源文件 【v3.4.9版本及以上】
└──.framework
├── LineSDK.framework : SDK的framework文件
├── LEventSDK.framework : SDK的framework文件
├── AppsFlyerLib.framework : 三方SDK的framework文件
├── FBSDKCoreKit.framework : 三方SDK的framework文件
├── FBSDKLoginKit.framework : 三方SDK的framework文件
├── FBSDKShareKit.framework : 三方SDK的framework文件
├── FBAEMKit.framework : 三方SDK的framework文件
├── FBSDKCoreKit_Basics.framework : 三方SDK的framework文件
├── FirebaseAnalytics.framework : 三方SDK的framework文件
├── FirebaseCore.framework : 三方SDK的framework文件
├── FirebaseCoreDiagnostics.framework : 三方SDK的framework文件
├── FirebaseCrashlytics.framework : 三方SDK的framework文件
├── FirebaseInstallations.framework : 三方SDK的framework文件
├── FirebaseInstanceID.framework : 三方SDK的framework文件
├── FirebaseMessaging.framework : 三方SDK的framework文件
├── FLAnimatedImage.framework : 三方SDK的framework文件
├── GoogleAppMeasurement.framework : 三方SDK的framework文件
├── GoogleDataTransport.framework : 三方SDK的framework文件
├── GoogleUtilities.framework : 三方SDK的framework文件
├── nanopb.framework : 三方SDK的framework文件
├── NNGSDK.framework : 三方SDK的framework文件
├── NaverLogin.framework : 三方SDK的framework文件
├── NaverThirdPartyLogin.framework : 三方SDK的framework文件
├── PromisesObjC.framework : 三方SDK的framework文件
├── Protobuf.framework : 三方SDK的framework文件
├── SDWebImage.framework : 三方SDK的framework文件
├── TwitterCore.framework : 三方SDK的framework文件
├── TwitterKit.framework : 三方SDK的framework文件
├── AppLovinSDK.framework : 三方SDK的framework文件
├── GoogleMobileAds.framework : 三方SDK的framework文件
├── FirebaseSessions.framework : 三方SDK的framework文件
├── FBLPromises.framework : 三方SDK的framework文件
├── AppAuth.framework : 三方SDK的framework文件
├── GoogleSignIn.framework : 三方SDK的framework文件
├── GTMAppAuth.framework : 三方SDK的framework文件
├── GTMSessionFetcher.framework : 三方SDK的framework文件
├── dx-captcha-static.framework : 三方SDK的framework文件 【v3.4.9版本及以上】
├── DXRiskStaticWithIDFA.framework : 三方SDK的framework文件 【v3.4.9版本及以上】
└──Crashlytics
├── run : 脚本文件
├── upload-symbols : 脚本文件
SDK 导入
注意事项
FirebaseSessions.framework
、FBLPromises.framework
需要移除在 TARGETS - General - Frameworks, Libraries, and Embedded Content 处的引用;AppLovinSDK.framework
、NaverThirdPartyLogin.framework
、TwitterKit.framework
、AppAuth.framework
、GoogleSignIn.framework
、GTMAppAuth.framework
、GTMSessionFetcher.framework
新增设置为Embed & Sign
;- 在
Build Phases
-Link Binary With Libraries
中将ReplayKit.framework
的Status
设置为Optional
;- 在
Build Phases
-Copy Bundle Resources
中 移除upload-symbols
文件;- 【v3.4.9版本及以上】新增
libresolv.tbd
、libc++.tbd
、CoreLocation.framework
、CoreTelephony.framework
系统库依赖;- 【v3.4.9版本及以上】需要在info.plist中新增
NSLocationWhenInUseUsageDescription
定位权限;
-
将 SDK 文件引入工程中
- 如下图,将 SDK 文件选中后,拖到 Xcode 工程中: 文件拖到工程中后,Xcode 会弹出下图提示,按照下图勾选并点击“Finish”:
- 文件引进后,在Xcode工程的目录中能看到对应的文件:
- 由于文件中包含了
.swift
文件,引入时工程会提示是否生成混编桥接文件(如下图),请选择Create Bridging Header
:
-
文件引进工程后,(注意:
FirebaseSessions.framework
,FBLPromises.framework
需要移除在TARGETS
-General
-Frameworks, Libraries, and Embedded Content
中的引用) -
检查 SDK 库文件引用。(正常 SDK 文件引入工程后,Xcode 会自动添加 SDK 库文件引用)
-
在工程的
TARGETS
-General
-Frameworks, Libraries, and Embedded Content
中,将以下.framework
设置为Embed & Sign
NaverThirdPartyLogin.framework
TwitterKit.framework
AppLovinSDK.framework
AppAuth.framework
GoogleSignIn.framework
GTMAppAuth.framework
GTMSessionFetcher.framework
- 如下图
-
添加系统库:在工程的
TARGETS
-General
-Frameworks, Libraries, and Embedded Content
└── .framework
├── Accelerate.framework
├── AdSupport.framework
├── AVFoundation.framework
├── CoreGraphics.framework
├── CoreLocation.framework
├── CoreMedia.framework
├── CoreTelephony.framework
├── GameKit.framework
├── iAd.framework
├── libsqlite3.tbd
├── libxml2.tbd
├── libz.tbd
├── MapKit.framework
├── QuartzCore.framework
├── SafariServices.framework
├── StoreKit.framework
├── SystemConfiguration.framework
├── UIKit.framework
├── UserNotifications.framework
├── WebKit.framework
├── AVKit.framework
├── MobileCoreServices.framework
├── MediaPlayer.framework
├── AssetsLibrary.framework
├── Security.framework
├── ImageIO.framework
├── AppTrackingTransparency.framework
├── AudioToolbox.framework
├── CoreMotion.framework
├── Foundation.framework
├── MessageUI.framework
├── ReplayKit.framework
├── libresolv.tbd
├── libc++.tbd
├── CoreLocation.framework
├── CoreTelephony.framework

-
从运营提供的参数文档中下载
GoogleService-Info.plist
,并将GoogleService-Info.plist
文件引进到工程里 -
从运营提供的参数文档中下载
SDKParam.plist
,并将SDKParam.plist
中的所有参数配置键值对逐一复制到项目的Info.plist
中( SDKParam.plist 中只会包含当前游戏所需要的配置,没有提供的参数配置,说明该游戏不需要) -
在工程的
TARGETS
-Signing & Capabilities
中新增以下功能Associated Domains
Game Center
In-App Purchase
Sign in with Apple
- 如下图
-
在工程的
TARGETS
-Build Setting
中搜索Other Linker Flags
,新增以下配置- -ObjC
- -licucore
- 如下图
- 需要注意的是:如果配置后,显示的值是
<Mutiple values>
,则表示可能配置只对真机或模拟器某一方生效,需要调整配置,使效果如上图 - 如果配置错误,会导致运行时闪退,错误提示如下:
unrecognize selector sent to instance: xxx
-
崩溃信息收集相关配置
-
确保
FirebaseCrashlytics.framework
文件 和Crashlytics文件夹
已引进到工程中,并且在TARGETS
-General
-Frameworks, Libraries, and Embedded Content
位置已包含了FirebaseCrashlytics.framework
文件的引用 -
在工程的
TARGETS
-Build Phases
-Run Script
中,添加以下执行脚本,如无Run Script
项,请点击左上角+
添加以下两句命令:"${PROJECT_DIR}/HaiWaiSDKDemo/GlobalSuperUnion/ThirdFramework/Crashlytics/run" "${PROJECT_DIR}/HaiWaiSDKDemo/GlobalSuperUnion/ThirdFramework/Crashlytics/upload-symbols" -gsp"${PROJECT_DIR}/HaiWaiSDKDemo/GlobalSuperUnion/GoogleService-Info.plist" -p ios "${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}"
上文的
路径
需替换成游戏工程中实际的路径,添加后示例效果如下图: -
在工程的
TARGETS
-Build Setting
中搜索Debug Information Format
,并设置为DWARF with dSYM File
如下图: -
完整配置可参照 Demo
-
配置了崩溃信息收集后,运行和打包的时候都要开启 VPN,Xcode 在执行上述脚本的时候会向 Firebase 上传文件,上传失败时会报错
-
在工程的
Build Settings
中Architectures
设置为 arm64 如下图: -
在工程的
Build Setting
中设置Swift Language Version
为 swift5

- 在工程的
Build Setting
中设置 Bitcode 为 NO
