Skip to content

Commit 5b01695

Browse files
authored
Merge pull request #62 from netease-george/main
10.4.0 发布
2 parents 9c20a22 + 900778a commit 5b01695

File tree

75 files changed

+3151
-504
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+3151
-504
lines changed

im_demo/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,3 +45,4 @@ app.*.map.json
4545
/android/app/debug
4646
/android/app/profile
4747
/android/app/release
48+
/android/app/.cxx

im_demo/CHANGELOG.md

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,32 @@
11
# IMKit(Flutter) ChangeLog
22

3+
## 10.4.0(Sep 22, 2025)
4+
5+
### New Features
6+
* 新增转发选择器
7+
* 支持识别手机号码和url 连接
8+
* 支持文字消息背景,字色,字号配置
9+
* 支持全局配置返回按钮
10+
* 支持在线状态开关
11+
12+
## 10.3.1(Jul 18, 2025)
13+
14+
### Bug Fix
15+
* 修复已知问题
16+
17+
## 10.3.0(Jun 27, 2025)
18+
19+
### New Features
20+
* 支持查看用户在线状态
21+
* 支持群组验证
22+
* 支持语言设置
23+
24+
## 10.2.0(May 27, 2025)
25+
26+
### New Features
27+
* 支持AI数字人功能
28+
29+
330
## 10.1.0(Apr 21, 2025)
431

532
### New Features
@@ -41,7 +68,7 @@
4168

4269
## 1.1.0(Jun 1, 2023)
4370
### New Features
44-
* 推送跳转跳转到具体聊天页面
71+
* 推送跳转跳转到具体聊天页面
4572

4673
## 1.0.0(Sep 30, 2022)
4774
### New Features

im_demo/android/app/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,9 @@ if (keystorePropertiesFile.exists()) {
4343
}
4444

4545
android {
46-
compileSdkVersion 34
46+
compileSdkVersion 35
4747

48-
buildToolsVersion "34.0.0"
48+
buildToolsVersion "35.0.0"
4949

5050
namespace 'com.netease.yunxin.app.flutter.im'
5151

im_demo/android/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ subprojects {
3434
if (project.plugins.hasPlugin("com.android.application") ||
3535
project.plugins.hasPlugin("com.android.library")) {
3636
project.android {
37-
compileSdkVersion 34
37+
compileSdkVersion 35
3838
buildToolsVersion "34.0.0"
3939
}
4040
}
@@ -44,7 +44,7 @@ subprojects {
4444
afterEvaluate { project ->
4545
if (project.hasProperty("android")) {
4646
android {
47-
compileSdkVersion 34
47+
compileSdkVersion 35
4848
compileOptions {
4949
sourceCompatibility JavaVersion.VERSION_17
5050
targetCompatibility JavaVersion.VERSION_17

im_demo/l10n.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,4 @@ template-arb-file: intl_en.arb
44
output-localization-file: demo_kit_client_localizations.dart
55
output-class: DemoKitClientLocalizations
66
header-file: header.txt
7-
synthetic-package: false
87
untranslated-messages-file: untranslated.txt

im_demo/lib/src/mine/about.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ class AboutPage extends StatelessWidget {
5151
),
5252
// 如果引入package_info 则不需要手动修改此处,但是如果只为了版本号引入不值得
5353
trailing: Text(
54-
'V10.3.0',
54+
'V10.4.0',
5555
style: _style,
5656
),
5757
),

im_demo/lib/src/mine/mine_page.dart

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import 'package:im_demo/src/mine/about.dart';
1515
import 'package:im_demo/src/mine/setting/mine_setting.dart';
1616
import 'package:im_demo/src/mine/user_info_page.dart';
1717
import 'package:nim_core_v2/nim_core.dart';
18+
import 'package:nim_chatkit/repo/config_repo.dart';
1819

1920
class MinePage extends StatefulWidget {
2021
const MinePage({Key? key}) : super(key: key);
@@ -28,7 +29,7 @@ class _MinePageState extends State<MinePage> {
2829

2930
IMLoginService _loginService = getIt<IMLoginService>();
3031

31-
StreamSubscription? _sub;
32+
List<StreamSubscription> _subs = [];
3233

3334
@override
3435
void initState() {
@@ -38,12 +39,22 @@ class _MinePageState extends State<MinePage> {
3839

3940
_refreshUserInfo();
4041

41-
_sub = NimCore.instance.loginService.onDataSync.listen((event) {
42-
if (event.type == NIMDataSyncType.nimDataSyncMain &&
43-
event.state == NIMDataSyncState.nimDataSyncStateCompleted) {
44-
_refreshUserInfo();
45-
}
46-
});
42+
_subs.addAll([
43+
NimCore.instance.loginService.onDataSync.listen((event) {
44+
if (event.type == NIMDataSyncType.nimDataSyncMain &&
45+
event.state == NIMDataSyncState.nimDataSyncStateCompleted) {
46+
_refreshUserInfo();
47+
}
48+
}),
49+
NimCore.instance.userService.onUserProfileChanged.listen((event) {
50+
for (var user in event) {
51+
if (user.accountId == _userInfo?.accountId) {
52+
_userInfo = user;
53+
setState(() {});
54+
}
55+
}
56+
})
57+
]);
4758
}
4859

4960
void _refreshUserInfo() {
@@ -56,7 +67,8 @@ class _MinePageState extends State<MinePage> {
5667

5768
@override
5869
void dispose() {
59-
_sub?.cancel();
70+
_subs.length > 0 ? _subs.forEach((element) => element.cancel()) : null;
71+
_subs.clear();
6072
super.dispose();
6173
}
6274

@@ -81,9 +93,9 @@ class _MinePageState extends State<MinePage> {
8193
InkWell(
8294
onTap: () {
8395
Navigator.push(
84-
context,
85-
MaterialPageRoute(
86-
builder: (context) => const UserInfoPage()))
96+
context,
97+
MaterialPageRoute(
98+
builder: (context) => const UserInfoPage()))
8799
.then((value) {
88100
setState(() {});
89101
});

im_demo/lib/src/mine/setting/notify_setting_page.dart

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,9 @@ class _NotifySettingPageState extends State<NotifySettingPage> {
7272
if (Platform.isAndroid) {
7373
ConfigRepo.updateMessageNotification(value);
7474
}
75-
ConfigRepo.updateMixNotification(value).then((success) {
75+
ConfigRepo.updateMixNotification(value,
76+
showDetail: !showNoDetail)
77+
.then((success) {
7678
Fluttertoast.showToast(
7779
msg: success
7880
? S.of(context).settingSuccess

im_demo/pubspec.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
1515
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
1616
# Read more about iOS versioning at
1717
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
18-
version: 10.3.1
18+
version: 10.4.0
1919

2020
environment:
2121
sdk: ">=2.16.1 <4.0.0"
@@ -75,6 +75,7 @@ dev_dependencies:
7575

7676
# The following section is specific to Flutter.
7777
flutter:
78+
generate: true
7879

7980
# The following line ensures that the Material Icons font is
8081
# included with your application, so that you can use the icons in

nim_chatkit_ui/CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
11
# NimChatKitUI ChangeLog
22

3+
## 10.4.0(Sep 22, 2025)
4+
5+
### New Features
6+
* 新增转发选择器
7+
* 支持识别手机号码和url 连接
8+
* 支持文字消息背景,字色,字号配置
9+
* 支持全局配置返回按钮
10+
* 支持在线状态开关
11+
312
## 10.3.1(Jul 18, 2025)
413

514
### Bug Fix

0 commit comments

Comments
 (0)