提交 a9d40785 authored 作者: JarvanMo's avatar JarvanMo

fix:crashed when share music on iOS;can't share min program on iOS

上级 113adac1
...@@ -96,7 +96,10 @@ class _ShareMiniProgramPageState extends State<ShareMiniProgramPage> { ...@@ -96,7 +96,10 @@ class _ShareMiniProgramPageState extends State<ShareMiniProgramPage> {
miniProgramType: WeChatShareMiniProgramModel.MINI_PROGRAM_TYPE_RELEASE, miniProgramType: WeChatShareMiniProgramModel.MINI_PROGRAM_TYPE_RELEASE,
userName: _userName, userName: _userName,
title: _title, title: _title,
path: _path,
description: _description, description: _description,
scene: WeChatScene.SESSION,
hdImagePath: _thumbnail,
thumbnail: _thumbnail); thumbnail: _thumbnail);
fluwx.share(model); fluwx.share(model);
} }
......
...@@ -193,7 +193,7 @@ NSObject <FlutterPluginRegistrar> *_registrar; ...@@ -193,7 +193,7 @@ NSObject <FlutterPluginRegistrar> *_registrar;
} }
- (void)shareMusic:(FlutterMethodCall *)call result:(FlutterResult)result { - (void)shareMusic:(FlutterMethodCall *)call result:(FlutterResult)result {
dispatch_queue_t globalQueue = dispatch_get_global_queue(1, 1); dispatch_queue_t globalQueue = dispatch_get_global_queue(0, 0);
dispatch_async(globalQueue, ^{ dispatch_async(globalQueue, ^{
NSString *thumbnail = call.arguments[fluwxKeyThumbnail]; NSString *thumbnail = call.arguments[fluwxKeyThumbnail];
...@@ -225,7 +225,7 @@ NSObject <FlutterPluginRegistrar> *_registrar; ...@@ -225,7 +225,7 @@ NSObject <FlutterPluginRegistrar> *_registrar;
} }
- (void)shareVideo:(FlutterMethodCall *)call result:(FlutterResult)result { - (void)shareVideo:(FlutterMethodCall *)call result:(FlutterResult)result {
dispatch_queue_t globalQueue = dispatch_get_global_queue(1, 1); dispatch_queue_t globalQueue = dispatch_get_global_queue(0, 0);
dispatch_async(globalQueue, ^{ dispatch_async(globalQueue, ^{
NSString *thumbnail = call.arguments[fluwxKeyThumbnail]; NSString *thumbnail = call.arguments[fluwxKeyThumbnail];
...@@ -255,7 +255,7 @@ NSObject <FlutterPluginRegistrar> *_registrar; ...@@ -255,7 +255,7 @@ NSObject <FlutterPluginRegistrar> *_registrar;
} }
- (void)shareMiniProgram:(FlutterMethodCall *)call result:(FlutterResult)result { - (void)shareMiniProgram:(FlutterMethodCall *)call result:(FlutterResult)result {
dispatch_queue_t globalQueue = dispatch_get_global_queue(1, 1); dispatch_queue_t globalQueue = dispatch_get_global_queue(0,0);
dispatch_async(globalQueue, ^{ dispatch_async(globalQueue, ^{
NSString *thumbnail = call.arguments[fluwxKeyThumbnail]; NSString *thumbnail = call.arguments[fluwxKeyThumbnail];
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
} }
- (NSString *)nilToEmpty:(NSString *)string { + (NSString *)nilToEmpty:(NSString *)string {
return string == nil?@"":string; return string == nil?@"":string;
} }
@end @end
\ No newline at end of file
...@@ -94,10 +94,10 @@ ...@@ -94,10 +94,10 @@
if ([StringUtil isBlank:musicURL]) { if ([StringUtil isBlank:musicURL]) {
ext.musicLowBandUrl = musicLowBandUrl; ext.musicLowBandUrl = musicLowBandUrl;
ext.musicLowBandDataUrl = musicLowBandDataUrl; ext.musicLowBandDataUrl = (musicLowBandDataUrl == (id) [NSNull null]) ? nil : musicLowBandDataUrl ;
} else { } else {
ext.musicUrl = musicURL; ext.musicUrl = musicURL;
ext.musicDataUrl = dataURL; ext.musicDataUrl = (dataURL == (id) [NSNull null]) ? nil : dataURL ;
} }
...@@ -205,14 +205,24 @@ ...@@ -205,14 +205,24 @@
TagName:(NSString *)tagName TagName:(NSString *)tagName
InScene:(enum WXScene)scene { InScene:(enum WXScene)scene {
WXMiniProgramObject *ext = [WXMiniProgramObject object]; WXMiniProgramObject *ext = [WXMiniProgramObject object];
ext.webpageUrl = webpageUrl; ext.webpageUrl = (webpageUrl == (id) [NSNull null]) ? nil : webpageUrl;
ext.userName = userName; ext.userName =(userName == (id) [NSNull null]) ? nil : userName ;
ext.path = path; ext.path = (path == (id) [NSNull null]) ? nil : path;
ext.hdImageData = hdImageData; ext.hdImageData = (hdImageData == (id) [NSNull null]) ? nil : hdImageData;
ext.withShareTicket = withShareTicket; ext.withShareTicket = withShareTicket;
ext.miniProgramType = programType;
WXMiniProgramType miniProgramType = WXMiniProgramTypeRelease;
if(programType == 0){
miniProgramType = WXMiniProgramTypeRelease;
} else if(programType == 1){
miniProgramType =WXMiniProgramTypeTest;
} else if(programType == 2){
miniProgramType = WXMiniProgramTypePreview;
}
ext.miniProgramType = miniProgramType;
WXMediaMessage *message = [WXMediaMessage messageWithTitle:(title == (id) [NSNull null]) ? nil : title WXMediaMessage *message = [WXMediaMessage messageWithTitle:(title == (id) [NSNull null]) ? nil : title
Description:(description == (id) [NSNull null]) ? nil : description Description:(description == (id) [NSNull null]) ? nil : description
Object:ext Object:ext
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论