# GUNION SHARE SDK 开发手册 for iOS
# 导入头文件
#import <GShare/GHomeShareManager.h>
1
# 在Appdelegate中添加函数
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
[[GHomeShareManager sharedManager] gShareHandleOpenURL:url];
return [[GHomeAPI sharedGHome] application:application openURL:url sourceApplication:sourceApplication annotation:annotation];
}
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler {
[[GHomeShareManager sharedManager] gShareHandleOpenUniversalLink:userActivity];
return [[GHomeAPI sharedGHome] application:application continueUserActivity:userActivity restorationHandler:restorationHandler];
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 配置三方参数
各平台的appid和universal link 配置,请参考下面的官方文档:
在Info.plist下加入下面的权限配置
Privacy - Microphone Usage Description "录制视频"
Privacy - Photo Library Additions Usage Description 本应用需要访问你的“相册” 分享保存图
1
2
2
# 初始化分享
// QQ平台
[[GHomeShareManager sharedManager] gShareSetupQQWithAppId:@"xxx" universalLinks:@"xxx"];
// 微信平台
[[GHomeShareManager sharedManager] gShareSetupWechatWithAppId:@"xxx" universalLinks:@"xxx"];
// 微博平台
[[GHomeShareManager sharedManager] gShareSetupWeiboWithAppId:@"xxx" universalLinks:@"xxx"];
1
2
3
4
5
6
2
3
4
5
6
# 第三方平台分享
方法在GHomeShareManager类中 //使用 [GHomeShareManager sharedManager]调用以下方法
/**
* @param platform 分享的平台 微信 0
微信朋友圈 1
QQ好友平台 2
QQ_PLATFORM 3
新浪微博 4
弹出选择平台UI 5
* Text 分享的文字
* userData 用户数据 选填 用不到可以传 0
* shareResult block回调,分享结果
* title 标题
* desc 描述
* imageData 图片数据 类型是NSData
* vedioURL 分享视频时候视频的URL地址
* audioURL 分享音频时候音频的URL地址
* webURL 分享网站时候网站的URL地址
*/
//分享文字
- (void)gShareTextWithPlatform:(int) platform Text:(NSString *) text userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
//分享图片
- (void)gShareImageWithPlatform:(int) platform title:(NSString *) title desc:(NSString *) desc imageData:(NSData *)imageData userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
//分享视频
- (void)gShareVideoWithPlatform:(int) platform title:(NSString *) title desc:(NSString *) desc imageData:(NSData *)imageData videoURL:(NSString *) videoURL userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
//分享音频
- (void)gShareAudioWithPlatform:(int) platform title:(NSString *) title desc:(NSString *) desc imageData:(NSData *)imageData audioURL:(NSString *) audioURL userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
//分享网站
- (void)gShareWebWithPlatform:(int) platform title:(NSString *) title desc:(NSString *) desc imageData:(NSData *)imageData webURL:(NSString *) webURL userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
调用示例(其他可参考demo)
[[GHomeShareManager sharedManager] gShareTextWithPlatform:nPlatformType Text:@"这是文字分享" userData:12345 shareResult:^(int nPlatformType, int nErrCode, NSString * _Nonnull pszErrMsg, NSInteger lUserData) {
//分享结果
}];
1
2
3
2
3
# 系统分享
方法在GHomeShareManager类中 //使用 [GHomeShareManager sharedManager]调用以下方法
/**
* @param vc UIViewController 用来弹出系统分享
* Text 分享的文字
* userData 用户数据 选填 用不到可以传 0
* shareResult block回调,分享结果
* desc 描述
* iamgePaths 图片 图片地址的数组
* videoPath 分享视频时候视频的路径
* audioPath 分享音频时候音频的路径
* url 分享网站时候网站的URL地址
*/
//分享文字
- (void)gSystemShareTextWithViewController:(UIViewController *) vc Text:(NSString *) text userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
//分享图片
- (void)gSystemShareImageWithViewController:(UIViewController *) vc iamgePaths:(NSArray *)paths userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
//分享视频
- (void)gSystemShareVideoWithViewController:(UIViewController *) vc videoPath:(NSString *)path userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
//分享音频
- (void)gSystemShareAudioWithViewController:(UIViewController *) vc audioPath:(NSString *)path userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
//分享网站
- (void)gSystemShareWebWithViewController:(UIViewController *) vc url:(NSString *)url desc:(NSString *)desc imagePath:(NSString *)path userData:(NSInteger) userData shareResult: (GShareResult) shareResult;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
调用示例(其他可参考demo)
[[GHomeShareManager sharedManager] gSystemShareTextWithViewController:self Text:@"这是文字分享" userData:12345 shareResult:^(int nPlatformType, int nErrCode, NSString * _Nonnull pszErrMsg, NSInteger lUserData) {
//分享结果
}];
1
2
3
2
3
# 录屏功能
方法在GHomeShareManager类中 //使用 [GHomeShareManager sharedManager]调用分享
//录屏初始化
- (void)gShareInitRecordService;
//开始录屏
- (BOOL)gShareStartRecordingCompleteResultCallback:(GRecordResult)recordResult;
//结束录屏
- (void)gShareStopRecord;
//获取录屏状态
- (NSInteger)gShareGetRecordStauts;
//结束录屏并分享
- (void)gShareStopRecordingAndShareWithViewController:(UIViewController *)vc shareResult:(GShareResult)shareResult;
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10