diff --git a/lib/data/services/db/sqflite_api.dart b/lib/data/services/db/sqflite_api.dart index e7319f596..a5f0f1cb3 100644 --- a/lib/data/services/db/sqflite_api.dart +++ b/lib/data/services/db/sqflite_api.dart @@ -7,18 +7,18 @@ import 'package:get_storage/get_storage.dart'; import 'database_helper.dart'; class SqfliteApi { - static GetStorage storage = GetStorage(); - static String userId = ''; - // 保存操作记录 static Future saveMeetingOperationRecord( String method, dynamic params, ) async { - if (userId.isEmpty) { - Map userInfo = storage.read("user_info"); + GetStorage storage = GetStorage(); + String userId = ''; + Map? userInfo = storage.read("user_info"); + if (userInfo != null) { userId = userInfo['user']['uid']; } + final db = await DatabaseHelper().database; String data = ''; if (method == 'records') { diff --git a/lib/main.dart b/lib/main.dart index 9086063c7..8f803a0c4 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -24,10 +24,10 @@ void main() async { // 初始化环境变量 await dotenv.load(); - + // 初始化登录服务(包含Firebase初始化) LoginService(); - + // 设置窗口大小(仅在 macOS 下生效) if (Platform.isMacOS) { const double width = 375.0; diff --git a/lib/modules/meeting/controllers/meeting_details_controller.dart b/lib/modules/meeting/controllers/meeting_details_controller.dart index ea15ec38e..29b15fade 100644 --- a/lib/modules/meeting/controllers/meeting_details_controller.dart +++ b/lib/modules/meeting/controllers/meeting_details_controller.dart @@ -145,7 +145,7 @@ class MeetingDetailsController extends GetxController } await playerController.preparePlayer( path: meetingData.value.filepath, - noOfSamples: 1200, + noOfSamples: 80, ); durationMax.value = await playerController.getDuration(DurationType.max); playerController.setFinishMode(finishMode: FinishMode.pause); diff --git a/lib/modules/meeting/views/meeting_details_view.dart b/lib/modules/meeting/views/meeting_details_view.dart index c9235bc5d..e8a6be03b 100644 --- a/lib/modules/meeting/views/meeting_details_view.dart +++ b/lib/modules/meeting/views/meeting_details_view.dart @@ -104,6 +104,7 @@ class MeetingDetailsView extends GetView { child: AudioFileWaveforms( size: Size(130.w, 30.w), playerController: controller.playerController, + waveformType: WaveformType.fitWidth, enableSeekGesture: false, playerWaveStyle: PlayerWaveStyle( fixedWaveColor: Colors.grey[400]!, @@ -341,6 +342,7 @@ class MeetingDetailsView extends GetView { child: AudioFileWaveforms( size: Size(350.w, 120.w), playerController: controller.playerController, + waveformType: WaveformType.fitWidth, playerWaveStyle: PlayerWaveStyle( fixedWaveColor: Colors.grey[300]!, liveWaveColor: Colors.red, diff --git a/lib/modules/meeting/views/share_bottom_sheet.dart b/lib/modules/meeting/views/share_bottom_sheet.dart index 682fd0dd7..7ad740d1f 100644 --- a/lib/modules/meeting/views/share_bottom_sheet.dart +++ b/lib/modules/meeting/views/share_bottom_sheet.dart @@ -149,14 +149,12 @@ class _ShareBottomSheetState extends State { EasyLoading.showToast('没有可分享的音频文件'); return; } - try { - await Share.shareXFiles( - [XFile(_controller.meetingData.value.filepath)], - text: '分享会议音频', - ); + final result = await SharePlus.instance.share(ShareParams( + text: '分享会议音频', + files: [XFile(_controller.meetingData.value.filepath)], + )); + if (result.status == ShareResultStatus.success) { EasyLoading.showToast('分享完成!'); - } catch (e) { - EasyLoading.showToast('分享失败: ${e.toString()}'); } } }