Skip to content

Commit e7175d4

Browse files
authored
Merge pull request #545 from easemob/dev_4.0.0+5
Dev 4.0.0+5
2 parents 36473a0 + 3063d12 commit e7175d4

File tree

8 files changed

+86
-28
lines changed

8 files changed

+86
-28
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
## NEXT
22

3+
## 4.0.0+5
4+
5+
#### 修复
6+
- 修复下载附件回调不执行。
7+
38
## 4.0.0+4
49

510
#### 修复

agora_build.sh

Lines changed: 0 additions & 10 deletions
This file was deleted.

android/src/main/java/com/easemob/im_flutter_sdk/EMChatManagerWrapper.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -444,7 +444,7 @@ public void onSuccess() {
444444
post(() -> {
445445
Map<String, Object> map = new HashMap<>();
446446
map.put("message", EMMessageHelper.toJson(msg));
447-
map.put("localTime", msg.localTime());
447+
map.put("localId", msg.getMsgId());
448448
messageChannel.invokeMethod(EMSDKMethod.onMessageSuccess, map);
449449
});
450450
}
@@ -454,7 +454,7 @@ public void onProgress(int progress, String status) {
454454
post(() -> {
455455
Map<String, Object> map = new HashMap<>();
456456
map.put("progress", progress);
457-
map.put("localTime", msg.localTime());
457+
map.put("localId", msg.getMsgId());
458458
messageChannel.invokeMethod(EMSDKMethod.onMessageProgressUpdate, map);
459459
});
460460
}
@@ -467,7 +467,7 @@ public void onError(int code, String desc) {
467467
post(() -> {
468468
Map<String, Object> map = new HashMap<>();
469469
map.put("message", EMMessageHelper.toJson(msg));
470-
map.put("localTime", msg.localTime());
470+
map.put("localId", msg.getMsgId());
471471
map.put("error", data);
472472
messageChannel.invokeMethod(EMSDKMethod.onMessageError, map);
473473
});
@@ -488,7 +488,7 @@ public void onSuccess() {
488488
post(() -> {
489489
Map<String, Object> map = new HashMap<>();
490490
map.put("message", EMMessageHelper.toJson(msg));
491-
map.put("localTime", msg.localTime());
491+
map.put("localId", msg.getMsgId());
492492
messageChannel.invokeMethod(EMSDKMethod.onMessageSuccess, map);
493493
});
494494
}
@@ -498,7 +498,7 @@ public void onProgress(int progress, String status) {
498498
post(() -> {
499499
Map<String, Object> map = new HashMap<>();
500500
map.put("progress", progress);
501-
map.put("localTime", msg.localTime());
501+
map.put("localId", msg.getMsgId());
502502
messageChannel.invokeMethod(EMSDKMethod.onMessageProgressUpdate, map);
503503
});
504504
}
@@ -511,7 +511,7 @@ public void onError(int code, String desc) {
511511
post(() -> {
512512
Map<String, Object> map = new HashMap<>();
513513
map.put("message", EMMessageHelper.toJson(msg));
514-
map.put("localTime", msg.localTime());
514+
map.put("localId", msg.getMsgId());
515515
map.put("error", data);
516516
messageChannel.invokeMethod(EMSDKMethod.onMessageError, map);
517517
});

common_replace.py

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: utf-8 -*-
3+
4+
import os
5+
import shutil
6+
import re
7+
import argparse
8+
9+
def parse_args():
10+
"""
11+
解析命令行参数
12+
"""
13+
parser = argparse.ArgumentParser(description='过滤Dart文件中的中文或英文注释',
14+
add_help=True)
15+
parser.add_argument('language', choices=['chinese', 'english'], help='要过滤的注释语言')
16+
parser.add_argument('src_folder', help='要过滤的源文件夹')
17+
parser.add_argument('dst_folder', help='要输出过滤后文件的目标文件夹')
18+
parser.add_argument('--file-type', '-t', default='.dart', help='要过滤的文件类型(默认为.dart)')
19+
return parser.parse_args()
20+
21+
def filter_folder(src_folder, dst_folder, file_type, language):
22+
"""
23+
过滤指定文件夹中的文件,并输出到目标文件夹
24+
"""
25+
for root, dirs, files in os.walk(src_folder):
26+
for file in files:
27+
if file.endswith(file_type):
28+
src_path = os.path.join(root, file)
29+
dst_path = os.path.join(dst_folder, os.path.relpath(src_path, start=src_folder))
30+
os.makedirs(os.path.dirname(dst_path), exist_ok=True)
31+
if not os.path.basename(src_path) == ".DS_Store":
32+
shutil.copy2(src_path, dst_path)
33+
filter_comments(dst_path, language)
34+
else:
35+
src_path = os.path.join(root, file)
36+
dst_path = os.path.join(dst_folder, os.path.relpath(src_path, start=src_folder))
37+
os.makedirs(os.path.dirname(dst_path), exist_ok=True)
38+
if not os.path.basename(src_path) == ".DS_Store":
39+
shutil.copy2(src_path, dst_path)
40+
41+
def filter_comments(file_path, language):
42+
"""
43+
过滤文件中的中文或英文注释
44+
"""
45+
with open(file_path, 'r', encoding='utf-8') as f:
46+
content = f.read()
47+
if language == 'chinese':
48+
pattern = r'~chinese[\s\S]*?~end'
49+
elif language == 'english':
50+
pattern = r'~english[\s\S]*?~end'
51+
else:
52+
return
53+
filtered_content = re.sub(pattern, '', content)
54+
filtered_content = filtered_content.replace('~chinese', '').replace('~english', '').replace('~end', '')
55+
56+
with open(file_path, 'w', encoding='utf-8') as f:
57+
f.write(filtered_content)
58+
59+
if __name__ == '__main__':
60+
args = parse_args()
61+
filter_folder(args.src_folder, args.dst_folder, args.file_type, args.language)

example/android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@ subprojects {
2626
project.evaluationDependsOn(':app')
2727
}
2828

29-
task clean(type: Delete) {
29+
tasks.register("clean", Delete) {
3030
delete rootProject.buildDir
3131
}

example/ios/Runner.xcodeproj/project.pbxproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,7 @@
205205
files = (
206206
);
207207
inputPaths = (
208+
"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
208209
);
209210
name = "Thin Binary";
210211
outputPaths = (

example/lib/main.dart

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import 'package:flutter/material.dart';
22
import 'package:im_flutter_sdk/im_flutter_sdk.dart';
33

4-
var appKey = "<#Your AppKey#>";
4+
var appKey = "easemob-demo#flutter";
55

66
void main() {
77
runApp(const MyApp());
@@ -167,14 +167,14 @@ class _MyHomePageState extends State<MyHomePage> {
167167
"UNIQUE_HANDLER_ID",
168168
ChatMessageEvent(
169169
onSuccess: (msgId, msg) {
170-
_addLogToConsole("send message succeed");
170+
_addLogToConsole("on message succeed");
171171
},
172172
onProgress: (msgId, progress) {
173-
_addLogToConsole("send message succeed");
173+
_addLogToConsole("on message progress");
174174
},
175175
onError: (msgId, msg, error) {
176176
_addLogToConsole(
177-
"send message failed, code: ${error.code}, desc: ${error.description}",
177+
"on message failed, code: ${error.code}, desc: ${error.description}",
178178
);
179179
},
180180
));
@@ -223,8 +223,9 @@ class _MyHomePageState extends State<MyHomePage> {
223223
break;
224224
case MessageType.FILE:
225225
{
226+
EMClient.getInstance.chatManager.downloadAttachment(msg);
226227
_addLogToConsole(
227-
"receive image message, from: ${msg.from}",
228+
"receive file message, from: ${msg.from}",
228229
);
229230
}
230231
break;

ios/Classes/EMChatManagerWrapper.m

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -472,22 +472,22 @@ - (void)downloadAttachment:(NSDictionary *)param
472472
[weakSelf.messageChannel invokeMethod:ChatOnMessageProgressUpdate
473473
arguments:@{
474474
@"progress":@(progress),
475-
@"localTime":@(msg.localTime)
475+
@"localId":msg.messageId
476476
}];
477477
} completion:^(EMChatMessage *message, EMError *error)
478478
{
479479
if (error) {
480480
[weakSelf.messageChannel invokeMethod:ChatOnMessageError
481481
arguments:@{
482482
@"error":[error toJson],
483-
@"localTime":@(msg.localTime),
483+
@"localId":msg.messageId,
484484
@"message":[message toJson]
485485
}];
486486
}else {
487487
[weakSelf.messageChannel invokeMethod:ChatOnMessageSuccess
488488
arguments:@{
489489
@"message":[message toJson],
490-
@"localTime":@(msg.localTime)
490+
@"localId":msg.messageId
491491
}];
492492
}
493493
}];
@@ -510,22 +510,22 @@ - (void)downloadThumbnail:(NSDictionary *)param
510510
[weakSelf.messageChannel invokeMethod:ChatOnMessageProgressUpdate
511511
arguments:@{
512512
@"progress":@(progress),
513-
@"localTime":@(msg.localTime)
513+
@"localId":msg.messageId
514514
}];
515515
} completion:^(EMChatMessage *message, EMError *error)
516516
{
517517
if (error) {
518518
[weakSelf.messageChannel invokeMethod:ChatOnMessageError
519519
arguments:@{
520520
@"error":[error toJson],
521-
@"localTime":@(msg.localTime),
521+
@"localId":msg.messageId,
522522
@"message":[message toJson]
523523
}];
524524
}else {
525525
[weakSelf.messageChannel invokeMethod:ChatOnMessageSuccess
526526
arguments:@{
527527
@"message":[message toJson],
528-
@"localTime":@(msg.localTime)
528+
@"localId":msg.messageId
529529
}];
530530
}
531531
}];

0 commit comments

Comments
 (0)