Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-fluwx
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
openSourceLibrary
clx-fluwx
Commits
00e9d653
Unverified
提交
00e9d653
authored
11月 01, 2024
作者:
JarvanMo
提交者:
GitHub
11月 01, 2024
浏览文件
操作
浏览文件
下载
差异文件
Fix thumbnail issues on iOS (#660)
- Fixes
https://github.com/OpenFlutter/fluwx/issues/650
- Fixes
https://github.com/OpenFlutter/fluwx/issues/647
上级
abe7051d
f11aabb1
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
33 行增加
和
16 行删除
+33
-16
CHANGELOG.md
CHANGELOG.md
+3
-0
FluwxPlugin.m
ios/Classes/FluwxPlugin.m
+29
-15
pubspec.yaml
pubspec.yaml
+1
-1
没有找到文件。
CHANGELOG.md
浏览文件 @
00e9d653
# 4.6.1
*
修复 iOS 使用 thumbnail 字段分享的问题
# 4.6.0
*
Android SDK => 6.8.30
*
分享新增基础字段:thumbData
...
...
ios/Classes/FluwxPlugin.m
浏览文件 @
00e9d653
...
...
@@ -4,6 +4,7 @@
#import <fluwx/ThumbnailHelper.h>
#import <fluwx/FluwxStringUtil.h>
#import <fluwx/NSStringWrapper.h>
#import <CommonCrypto/CommonDigest.h>
#import <WXApi.h>
#import <WXApiObject.h>
#import <WechatAuthSDK.h>
...
...
@@ -542,8 +543,7 @@ NSObject <FlutterPluginRegistrar> *_fluwxRegistrar;
dispatch_async
(
dispatch_get_main_queue
(),
^
{
FlutterStandardTypedData
*
flutterThumbData
=
call
.
arguments
[
fluwxKeyThumbData
];
NSData
*
thumbData
=
nil
;
if
(
flutterThumbData
!=
nil
){
if
(
flutterThumbData
!=
nil
&&
!
[
flutterThumbData
isKindOfClass
:[
NSNull
class
]])
{
thumbData
=
flutterThumbData
.
data
;
}
...
...
@@ -582,8 +582,7 @@ NSObject <FlutterPluginRegistrar> *_fluwxRegistrar;
FlutterStandardTypedData
*
flutterThumbData
=
call
.
arguments
[
fluwxKeyThumbData
];
NSData
*
thumbData
=
nil
;
if
(
flutterThumbData
!=
nil
){
if
(
flutterThumbData
!=
nil
&&
!
[
flutterThumbData
isKindOfClass
:[
NSNull
class
]])
{
thumbData
=
flutterThumbData
.
data
;
}
...
...
@@ -615,8 +614,7 @@ NSObject <FlutterPluginRegistrar> *_fluwxRegistrar;
dispatch_async
(
dispatch_get_main_queue
(),
^
{
FlutterStandardTypedData
*
flutterThumbData
=
call
.
arguments
[
fluwxKeyThumbData
];
NSData
*
thumbData
=
nil
;
if
(
flutterThumbData
!=
nil
){
if
(
flutterThumbData
!=
nil
&&
!
[
flutterThumbData
isKindOfClass
:[
NSNull
class
]])
{
thumbData
=
flutterThumbData
.
data
;
}
...
...
@@ -650,12 +648,11 @@ NSObject <FlutterPluginRegistrar> *_fluwxRegistrar;
UIImage
*
thumbnailImage
=
[
self
getCommonThumbnail
:
call
];
dispatch_async
(
dispatch_get_main_queue
(),
^
{
NSNumber
*
scene
=
call
.
arguments
[
fluwxKeyScene
];
FlutterStandardTypedData
*
flutterThumbData
=
call
.
arguments
[
fluwxKeyThumbData
];
NSData
*
thumbData
=
nil
;
if
(
flutterThumbData
!=
nil
){
if
(
flutterThumbData
!=
nil
&&
!
[
flutterThumbData
isKindOfClass
:[
NSNull
class
]])
{
thumbData
=
flutterThumbData
.
data
;
}
...
...
@@ -698,8 +695,7 @@ NSObject <FlutterPluginRegistrar> *_fluwxRegistrar;
FlutterStandardTypedData
*
flutterThumbData
=
call
.
arguments
[
fluwxKeyThumbData
];
NSData
*
thumbData
=
nil
;
if
(
flutterThumbData
!=
nil
){
if
(
flutterThumbData
!=
nil
&&
!
[
flutterThumbData
isKindOfClass
:[
NSNull
class
]])
{
thumbData
=
flutterThumbData
.
data
;
}
...
...
@@ -742,11 +738,9 @@ NSObject <FlutterPluginRegistrar> *_fluwxRegistrar;
}
dispatch_async
(
dispatch_get_main_queue
(),
^
{
FlutterStandardTypedData
*
flutterThumbData
=
call
.
arguments
[
fluwxKeyThumbData
];
NSData
*
thumbData
=
nil
;
if
(
flutterThumbData
!=
nil
){
if
(
flutterThumbData
!=
nil
&&
!
[
flutterThumbData
isKindOfClass
:[
NSNull
class
]])
{
thumbData
=
flutterThumbData
.
data
;
}
...
...
@@ -1673,12 +1667,20 @@ NSObject <FlutterPluginRegistrar> *_fluwxRegistrar;
message
.
messageExt
=
messageExt
;
message
.
messageAction
=
action
;
message
.
mediaTagName
=
tagName
;
if
(
thumbImage
!=
nil
)
{
[
message
setThumbImage
:
thumbImage
];
// FIXME: setThumbImage still exists. Use the below code when it's not.
//NSData *data = UIImageJPEGRepresentation(thumbImage, 1.0);
//NSString *hash = [self sha256HashForData:data];
//message.thumbData = data;
//message.thumbDataHash = hash;
}
else
{
message
.
thumbData
=
thumbData
;
message
.
thumbDataHash
=
thumbDataHash
;
}
if
(
msgSignature
!=
nil
){
message
.
msgSignature
=
msgSignature
;
}
[
message
setThumbImage
:
thumbImage
];
return
message
;
}
...
...
@@ -1706,4 +1708,16 @@ NSObject <FlutterPluginRegistrar> *_fluwxRegistrar;
}
return
nil
;
}
-
(
NSString
*
)
sha256HashForData
:
(
NSData
*
)
data
{
uint8_t
hash
[
CC_SHA256_DIGEST_LENGTH
];
CC_SHA256
(
data
.
bytes
,
(
CC_LONG
)
data
.
length
,
hash
);
NSMutableString
*
hashString
=
[
NSMutableString
stringWithCapacity
:
CC_SHA256_DIGEST_LENGTH
*
2
];
for
(
int
i
=
0
;
i
<
CC_SHA256_DIGEST_LENGTH
;
i
++
)
{
[
hashString
appendFormat
:
@"%02x"
,
hash
[
i
]];
}
return
[
hashString
copy
];
}
@end
pubspec.yaml
浏览文件 @
00e9d653
name
:
fluwx
description
:
The capability of implementing WeChat SDKs in Flutter. With Fluwx, developers can use WeChatSDK easily, such as sharing, payment, lanuch mini program and etc.
version
:
4.6.
0
version
:
4.6.
1
homepage
:
https://github.com/OpenFlutter/fluwx
environment
:
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论