运行 demo 请使用 包名
的调试证书。在项目中请使用控制台创建的自己的,包名(BundleID),秘钥(Appkey)和资源文件
1、将示例工程源码中 Resources 文件夹内的文件拖入到 Xcode 项目中。
TuSDK 文件夹:
(1)libyuv.framework
(2)TuSDK.framework
(3)TuSDKVideo.framework
(4)TuSDKFace.framework
Localized 文件夹:
(1)VideoDemo.strings 为 Demo 展示项目中使用的语言文件。
(2)TuSDKConstants.strings 为资源名称使用的语言文件。
(3)InfoPlist.strings 为 Demo 使用,集成时请删除。
Thumbnails 文件夹:
Demo 项目中使用到的所有的资源展示的封面图,集成到项目中可以参考封面图进行自定义。
Assets 文件夹:
(1)customStickerCategories.json 为贴纸在线管理功能使用的数据文件。
(2)sample_watermark.png 为「录制」和「编辑」功能中使用的水印图片,可进行自定义更换。
(3)edit_ic_colorbar.jpg 为功能中色彩选取使用到的文件。
(4)video_camera_focus.png, video_camera_focus_finish.png 为聚焦视图的背景图片,可自定义更换图片,图片名字不能更改
AVSamples 文件夹
(1)Mp3 文件为 Demo 中 「MV」 和「配音」中使用到的音频文件,可自定义更换。
(2)Mov 文件为 Demo 中 「功能列表」-「API 示例」中使用到的视频素材,集成后可删除。
TuSDK.bundle 文件:
(1)model 文件,需要保留。
(2)others 文件夹,包含使用到的资源文件的索引,进行资源文件操作是需要进行替换。
(3)stickers 文件夹,包含打包到本地使用的贴纸的资源文件,进行资源文件操作是需要进行替换。
(4)textures 文件夹,包含打包到本地使用的滤镜的资源文件,进行资源文件操作是需要进行替换。
其他文件夹如,brushes 和 ui_default 文件夹为图像 SDK 使用,如无相关功能匹配可删除。
2、勾选 Copy items if needed,点击 Finish,确认文件的 Target-Membership 配置项被勾选。
3、打开项目 app target,查看 Build Settings 中 Linking - Other Linker Flags 选项,确保含有 -ObjC
,若没有则添加。用户使用 Cocoapods 进行第三方依赖库管理,需要在 -ObjC
前添加 $(inherited)
。目前短视频 SDK 暂不支持 Cocoapods。
4、打开项目 app target,查看 Build Settings 中 Enable Bitcode 选项设置为NO
。
5、如使用 Xcode 10及以上版本,请忽略步骤4,5,6
。在项目的 app target 中,查看 Build Phases 中的 Linking - Link Binary With Libraries 选项中,手动添加 Photos.framework
,并将 Photos.framework 的 Status 设置成 Optional
。
6、在项目的 app target 中,查看 Build Phases 中的 Linking - Link Binary With Libraries 选项中,手动添加 Accelerate.framework
。
7、在项目的 app target 中,查看 Build Phases 中的 Linking - Link Binary With Libraries 选项中,手动添加 libz.1.2.5.tbd
,libstdc++.tbd
,libstdc++.6.tbd
和libstdc++.6.0.9.tbd
;如果使用 TuSDKVideo.framework Version 3.4.4 及以上版本,手动添加 libresolv.tbd
。
8、用户在 TUTUCLOUD 网站控制台内查看项目需要的滤镜,并将资源文件进行「打包」操作,然后在「资源打包」处下载。下载的资源文件中包含 others
, textures
和stickers
需要将这些文件夹替换到 TuSDK.bundle 中对应位置。具体操作可参考文档,新控制台操作手册
9、用户可以在 TuSDKVideoDemo/Resources
文件中找到 TuSDK.bundle 文件。文件中包含 others
,textures
,stickers
和 ui_default
这些文件夹。用户需要替换 others/lsq_tusdk_configs.json
文件 textures
和 stickers
整个文件夹。
10、SDK 暂时不支持 Cocoapods
,进行更新操作,请重复步骤7。
11、swift 环境下或使用 xcode 10.2 ,请添加 libc++.tbd
的依赖。
1、在需要使用 TuSDK 的类的文件中引入头文件 #import "TuSDKFramework.h"
,文件可从 TuSDKVideoDemo 中导入。
2、在 AppDelegate.m
的 didFinishLaunchingWithOptions
方法中添加初始化代码,用户如果需求同一应用不同版本发布,可以参考文档如何使用多个 masterkey
3、为便于开发,可打开 TuSDK 的调试日志,在初始化方法的同一位置添加以下代码:[TuSDK setLogLevel:lsqLogLevelDEBUG];
发布应用时请关闭日志。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// 初始化SDK (请前往 http://tusdk.com 获取您的 APP 开发密钥)
[TuSDK initSdkWithAppKey:@"828d700d182dd469-04-ewdjn1"];
// 多 masterkey 方式启动方法
// @see-https://tutucloud.com/docs/ios-faq/masterkey
if ([[[NSBundle mainBundle] bundleIdentifier] isEqualToString:@"com.XXXXXXXX.XXXX"]) {
[TuSDK initSdkWithAppKey:@"714f0a1265b39708-02-xie0p1" devType:@"release"];
}
// 开发时请打开调试日志输出
[TuSDK setLogLevel:lsqLogLevelDEBUG];
}
4、添加位置权限,在 viewDidLoad
协议方法中添加以下代码,并在项目的 Info.plist
文件中加入获取位置信息字段。例如:
- (void)viewDidLoad {
// 启动GPS
// 不需要定位功能,可注释该代码,即不再申请定位权限
[[TuSDKTKLocation shared] requireAuthorWithController:self];
}
5、检查滤镜管理器的初始化,在使用滤镜前的某个界面的 viewDidLoad
协议方法中添加以下代码,即可检查滤镜管理器的初始化是否完成。
- (void)viewDidLoad {
// 异步方式初始化滤镜管理器
// 需要等待滤镜管理器初始化完成,才能使用所有功能
[TuSDK checkManagerWithDelegate:self];
// Framework Version Print
NSLog(@"TuSDK.framework 的版本号 : %@",lsqSDKVersion);
NSLog(@"TuSDKVideo.framework 的版本号 : %@",lsqVideoVersion);
}
#pragma mark - TuSDKFilterManagerDelegate
/**
* 滤镜管理器初始化完成(代理方法)
*
* @param manager
* 滤镜管理器
*/
- (void)onTuSDKFilterManagerInited:(TuSDKFilterManager *)manager;
{
NSLog(@"滤镜初始化完成");
}
6、需要在 Info.plist 中添加相应权限,否则程序在 iOS 10 系统上会出现问题。需要添加如下权限:
<!-- 相册 -->
<key>NSPhotoLibraryUsageDescription</key>
<string>Recording requires to use your photo library</string>
<!-- 相机 -->
<key>NSCameraUsageDescription</key>
<string>Recording requires to use your camera</string>
<!-- 麦克风 -->
<key>NSMicrophoneUsageDescription</key>
<string>Recording requires to use your microphone</string>
<!-- 在使用期间访问位置 -->
<key>NSLocationWhenInUseUsageDescription</key>
<string>Recording requires your location</string>
©2019-2024 TUTUCLOUD. All Rights Reserved. 杭州元凡视觉智能科技有限公司 | 浙ICP备14040447号-1 | 浙公网安备33010602001649号