使用说明

SDK集成准备

注意: 微吼Saas SDK自4.0.0版本之后SDK的输出改为framework(4.0.0之前是以静态库的形式输出),下面是新版本的SDK使用说明以及注意事项。

下载SDK&使用准备

下载SDK&demo

微吼小直播

开发环境要求

最低支持iOS版本:iOS 9.0

最低支持iPhone型号:iPhone 5s

支持CPU架构: armv7, arm64 含有i386和x86_64模拟器版本的库文件,推流功能无法在模拟器上工作,播放功能完全支持模拟器。

互动功能:

  1. 最低支持iOS版本:iOS 9.0
  2. 最低支持iPhone型号:iPhone 6
  3. 暂不支持 模拟器环境

工程设置

  1. 工程中AppDelegate.m 文件名修改为 AppDelegate.mm
  2. 关闭bitcode 设置
  3. plist 中 App Transport Security Settings -> Allow Arbitrary Loads 设置为YES
  4. 注册AppKey [VHallApi registerApp:AppKey SecretKey:AppSecretKey];
  5. 检查工程 Bundle ID 是否与AppKey对应
  6. plist中添加相机、麦克风权限

其中VHallInteractive下的framework是互动库,外部是直播库。

使用CocoaPods 引入SDK

v5.x版本: 使用直播功能

pod 'VHLiveSDK'

使用互动功能SDK,包含直播库

pod 'VHLiveSDK_Interactive'

v5.x之前的版本: 使用直播功能

pod 'VHallSDK_Live'

使用互动功能SDK,包含直播库

pod 'VHallSDK_Interactive'

注:由于网络和github原因下载时间比较长,请耐心等待

手动 引入SDK

在TARGET->Embedded Binaries下添加动态库:

如只使用直播,可不添加互动库。

在TARGET->Build Setting下设置依赖库路径

注册应用

使用[VHallApi registerApp: XXXXXX SecretKey:XXXXXX]; 注册应用注意:此处SecretKey 是指申请到的 AppSecretKey

如果是微软云用户请使用以下方法注册应用 [VHallApi registerApp: XXXXXX SecretKey:XXXXXX host:@"azure.e.vhall.com"];

如果是腾讯云用户请使用以下方法注册应用 [VHallApi registerApp: XXXXXX SecretKey:XXXXXX host:@"tencent.vhall.com"];

#import <VHLiveSDK/VHallApi.h>

-application: didFinishLaunchingWithOptions: {
…
	[VHallApi registerApp: XXXXXX SecretKey:XXXXXX]; 

//	如只是观看直播、点播可以不登录
//	[VHallApi loginWithAccount:DEMO_Setting.account 
		password:DEMO_Setting.password success:^{
//        [weekself showMsg:@"登录成功" afterDelay:1.5];
//    } failure:^(NSError * error) {
//        VHLog(@"登录失败%@",error);
//    }];
…
}

Demo 介绍

1.用VHSDKDemo.xcworkspace 打开工程 2.编译UIModel工程 后会在文件VHSDKDemo.xcworkspace 所在文件夹UIModel中 自动生成编译后的静态库,用于demo使用 其结构为:

其中libs_third 中是依赖第三方代码,如有冲突删除对应的静态库即可 其他文件为 UImodel 输出静态库及头文件直接引用即可实现 直播、点播等功能

3.VHSDKDemo 工程 只负责设置及调用UImodel中的页面

打包上传 App Store 问题

上架报错90080,90087,90209,90125 解决办法

解决办法:TARGETS->Build Phases->点击加号选择New Run Script Phase->然后复制粘贴下面代码

APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"
if [[ $APP_PATH != *ArchiveIntermediates* ]]; then
    exit 0
fi

# This script loops through the frameworks embedded in the application and
# removes unused architectures.
find "$APP_PATH" -name '*.framework' -type d | while read -r FRAMEWORK
do
FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable)
FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME"
echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"

EXTRACTED_ARCHS=()

for ARCH in $ARCHS
do
echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME"
lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH"
EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH")
done

echo "Merging extracted architectures: ${ARCHS}"
lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}"
rm "${EXTRACTED_ARCHS[@]}"

echo "Replacing original executable with thinned version"
rm "$FRAMEWORK_EXECUTABLE_PATH"
mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH"

done

模块的集成流程逻辑

发直播、观看直播、聊天、问答这4个模块的集成流程逻辑如下。 如果需要集成聊天或问答,需要提前服务器端注册用户,用户登陆后才可正常使用