GAiSdk.framework和GTCommonSDK.xcframework目录拷贝到项目工程目录下
libc++.tbd
libz.tbd
libsqlite3.tbd
libresolv.tbd
Security.framework
MobileCoreServices.framework
SystemConfiguration.framework
CFNetwork.framework
CoreTelephony.framework
CoreLocation.framework
AdSupport.framework(如果需要采集idfa请添加此库并按照苹果要求进行申请)
找到主工程的 target -> Build Setting -> Linking -> Other Linker Flags,在$(inherited)下面添加 -ObjC
在此之外,您还可以配置以下可选权限,以便使用地理位置、麦克风等相关功能。
可在项目的Info.plist中配置如下:
<!-- 允许访问网络 -->
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
<!-- IDFA -->
<key>NSUserTrackingUsageDescription</key>
<string>请求IDFA描述</string>
<!-- 麦克风相关 -->
<key>NSMicrophoneUsageDescription</key>
<string>需要访问您的麦克风以使用语音/录音功能</string>
<!-- 定位相关 -->
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>根据业务需要,始终允许访问位置信息</string>
<key>NSLocationAlwaysUsageDescription</key>
<string>根据业务需要,始终允许访问位置信息</string>
<key>NSLocationUsageDescription</key>
<string>根据业务需要,永不允许访问位置信息</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>根据业务需要,使用应用期间允许访问位置信息</string>
接口描述:
使用智能体功能以前,需要先启动 SDK。
接口定义:
/**
初始化启动接口
@param appId 开发者中心生成的 appId
*/
@objc(startSdkWithAppId:onSuccess:onFailure:)
public static func startSdk(
appId: String,
onSuccess: AISDKSuccessBlock? = nil,
onFailure: AISDKFailureBlock? = nil
)
接口说明:
| 参数 | 参数说明 |
|---|---|
appId |
应用标识 APPID |
接口示例:
#import <GAiSdk/GAiSdk-Swift.h>
#define kGcAppId @"xxxxxxx"
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[AISDK startSdkWithAppId:AISDKDemoAppId onSuccess:^(id _Nullable res) {
self.sdkInitialized = YES;
self.statusLabel.text = @"状态:初始化成功";
NSLog(@"[AISDKDemo] startSdk success");
} onFailure:^(NSError * _Nonnull error) {
self.sdkInitialized = NO;
self.statusLabel.text = [NSString stringWithFormat:@"状态:初始化失败 (%@)", @(error.code)];
NSLog(@"[AISDKDemo] startSdk failure code:%@ msg:%@", @(error.code), error.localizedDescription);
}];
return YES;
}
Swift调用方式:
AISDK.startSdk(appId: DemoConfig.appId, onSuccess: { [weak self] _ in
DispatchQueue.main.async {
self?.sdkReady = true
self?.statusLabel.text = "SDK 初始化成功"
}
}, onFailure: { [weak self] error in
DispatchQueue.main.async {
guard let self else { return }
self.sdkReady = false
self.statusLabel.text = "SDK 初始化失败:\(error.code) \(error.localizedDescription)"
}
})
以上文档对您是否有帮助?