diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..da872b9 Binary files /dev/null and b/.DS_Store differ diff --git a/ios/Podfile b/ios/Podfile index a896be8..6d26356 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -30,6 +30,7 @@ flutter_ios_podfile_setup target 'Runner' do use_frameworks! + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) target 'RunnerTests' do inherit! :search_paths diff --git a/ios/Podfile.lock b/ios/Podfile.lock index b193cf8..a37f9ab 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1,55 +1,55 @@ PODS: - - agora_rtc_engine (6.5.3): - - AgoraIrisRTC_iOS (= 4.5.2-build.1) - - AgoraRtcEngine_iOS (= 4.5.2) + - agora_rtc_engine (6.5.1): + - AgoraIrisRTC_iOS (= 4.5.1-build.1) + - AgoraRtcEngine_iOS (= 4.5.1) - Flutter - agora_rtm (2.2.5): - AgoraIrisRTM_iOS (= 2.2.5-build.2) - AgoraRtm (= 2.2.5) - Flutter - - AgoraInfra_iOS (1.2.13.1) - - AgoraIrisRTC_iOS (4.5.2-build.1) + - AgoraInfra_iOS (1.2.13) + - AgoraIrisRTC_iOS (4.5.1-build.1) - AgoraIrisRTM_iOS (2.2.5-build.2) - - AgoraRtcEngine_iOS (4.5.2): - - AgoraRtcEngine_iOS/AIAEC (= 4.5.2) - - AgoraRtcEngine_iOS/AIAECLL (= 4.5.2) - - AgoraRtcEngine_iOS/AINS (= 4.5.2) - - AgoraRtcEngine_iOS/AINSLL (= 4.5.2) - - AgoraRtcEngine_iOS/AudioBeauty (= 4.5.2) - - AgoraRtcEngine_iOS/ClearVision (= 4.5.2) - - AgoraRtcEngine_iOS/ContentInspect (= 4.5.2) - - AgoraRtcEngine_iOS/FaceCapture (= 4.5.2) - - AgoraRtcEngine_iOS/FaceDetection (= 4.5.2) - - AgoraRtcEngine_iOS/LipSync (= 4.5.2) - - AgoraRtcEngine_iOS/ReplayKit (= 4.5.2) - - AgoraRtcEngine_iOS/RtcBasic (= 4.5.2) - - AgoraRtcEngine_iOS/SpatialAudio (= 4.5.2) - - AgoraRtcEngine_iOS/VideoAv1CodecDec (= 4.5.2) - - AgoraRtcEngine_iOS/VideoAv1CodecEnc (= 4.5.2) - - AgoraRtcEngine_iOS/VideoCodecDec (= 4.5.2) - - AgoraRtcEngine_iOS/VideoCodecEnc (= 4.5.2) - - AgoraRtcEngine_iOS/VirtualBackground (= 4.5.2) - - AgoraRtcEngine_iOS/VQA (= 4.5.2) - - AgoraRtcEngine_iOS/AIAEC (4.5.2) - - AgoraRtcEngine_iOS/AIAECLL (4.5.2) - - AgoraRtcEngine_iOS/AINS (4.5.2) - - AgoraRtcEngine_iOS/AINSLL (4.5.2) - - AgoraRtcEngine_iOS/AudioBeauty (4.5.2) - - AgoraRtcEngine_iOS/ClearVision (4.5.2) - - AgoraRtcEngine_iOS/ContentInspect (4.5.2) - - AgoraRtcEngine_iOS/FaceCapture (4.5.2) - - AgoraRtcEngine_iOS/FaceDetection (4.5.2) - - AgoraRtcEngine_iOS/LipSync (4.5.2) - - AgoraRtcEngine_iOS/ReplayKit (4.5.2) - - AgoraRtcEngine_iOS/RtcBasic (4.5.2): - - AgoraInfra_iOS (= 1.2.13.1) - - AgoraRtcEngine_iOS/SpatialAudio (4.5.2) - - AgoraRtcEngine_iOS/VideoAv1CodecDec (4.5.2) - - AgoraRtcEngine_iOS/VideoAv1CodecEnc (4.5.2) - - AgoraRtcEngine_iOS/VideoCodecDec (4.5.2) - - AgoraRtcEngine_iOS/VideoCodecEnc (4.5.2) - - AgoraRtcEngine_iOS/VirtualBackground (4.5.2) - - AgoraRtcEngine_iOS/VQA (4.5.2) + - AgoraRtcEngine_iOS (4.5.1): + - AgoraRtcEngine_iOS/AIAEC (= 4.5.1) + - AgoraRtcEngine_iOS/AIAECLL (= 4.5.1) + - AgoraRtcEngine_iOS/AINS (= 4.5.1) + - AgoraRtcEngine_iOS/AINSLL (= 4.5.1) + - AgoraRtcEngine_iOS/AudioBeauty (= 4.5.1) + - AgoraRtcEngine_iOS/ClearVision (= 4.5.1) + - AgoraRtcEngine_iOS/ContentInspect (= 4.5.1) + - AgoraRtcEngine_iOS/FaceCapture (= 4.5.1) + - AgoraRtcEngine_iOS/FaceDetection (= 4.5.1) + - AgoraRtcEngine_iOS/LipSync (= 4.5.1) + - AgoraRtcEngine_iOS/ReplayKit (= 4.5.1) + - AgoraRtcEngine_iOS/RtcBasic (= 4.5.1) + - AgoraRtcEngine_iOS/SpatialAudio (= 4.5.1) + - AgoraRtcEngine_iOS/VideoAv1CodecDec (= 4.5.1) + - AgoraRtcEngine_iOS/VideoAv1CodecEnc (= 4.5.1) + - AgoraRtcEngine_iOS/VideoCodecDec (= 4.5.1) + - AgoraRtcEngine_iOS/VideoCodecEnc (= 4.5.1) + - AgoraRtcEngine_iOS/VirtualBackground (= 4.5.1) + - AgoraRtcEngine_iOS/VQA (= 4.5.1) + - AgoraRtcEngine_iOS/AIAEC (4.5.1) + - AgoraRtcEngine_iOS/AIAECLL (4.5.1) + - AgoraRtcEngine_iOS/AINS (4.5.1) + - AgoraRtcEngine_iOS/AINSLL (4.5.1) + - AgoraRtcEngine_iOS/AudioBeauty (4.5.1) + - AgoraRtcEngine_iOS/ClearVision (4.5.1) + - AgoraRtcEngine_iOS/ContentInspect (4.5.1) + - AgoraRtcEngine_iOS/FaceCapture (4.5.1) + - AgoraRtcEngine_iOS/FaceDetection (4.5.1) + - AgoraRtcEngine_iOS/LipSync (4.5.1) + - AgoraRtcEngine_iOS/ReplayKit (4.5.1) + - AgoraRtcEngine_iOS/RtcBasic (4.5.1): + - AgoraInfra_iOS (= 1.2.13) + - AgoraRtcEngine_iOS/SpatialAudio (4.5.1) + - AgoraRtcEngine_iOS/VideoAv1CodecDec (4.5.1) + - AgoraRtcEngine_iOS/VideoAv1CodecEnc (4.5.1) + - AgoraRtcEngine_iOS/VideoCodecDec (4.5.1) + - AgoraRtcEngine_iOS/VideoCodecEnc (4.5.1) + - AgoraRtcEngine_iOS/VirtualBackground (4.5.1) + - AgoraRtcEngine_iOS/VQA (4.5.1) - AgoraRtm (2.2.5): - AgoraRtm/RtmBasic (= 2.2.5) - AgoraRtm/RtmKit (= 2.2.5) @@ -62,6 +62,8 @@ PODS: - FlutterMacOS - camera_avfoundation (0.0.1): - Flutter + - emoji_picker_flutter (0.0.1): + - Flutter - Flutter (1.0.0) - flutter_native_splash (2.4.3): - Flutter @@ -71,11 +73,11 @@ PODS: - fluwx/pay (0.0.1): - Flutter - WechatOpenSDK-XCFramework (~> 2.0.5) - - HyphenateChat (4.15.0): - - AgoraInfra_iOS (~> 1.2.13) + - HyphenateChat (4.15.1): + - AgoraInfra_iOS (= 1.2.13) - im_flutter_sdk_ios (4.15.2): - Flutter - - HyphenateChat (= 4.15.0) + - HyphenateChat (= 4.15.1) - image_picker_ios (0.0.1): - Flutter - iris_method_channel (0.0.1): @@ -135,6 +137,7 @@ DEPENDENCIES: - app_settings (from `.symlinks/plugins/app_settings/ios`) - audioplayers_darwin (from `.symlinks/plugins/audioplayers_darwin/darwin`) - camera_avfoundation (from `.symlinks/plugins/camera_avfoundation/ios`) + - emoji_picker_flutter (from `.symlinks/plugins/emoji_picker_flutter/ios`) - Flutter (from `Flutter`) - flutter_native_splash (from `.symlinks/plugins/flutter_native_splash/ios`) - fluwx (from `.symlinks/plugins/fluwx/ios`) @@ -178,6 +181,8 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/audioplayers_darwin/darwin" camera_avfoundation: :path: ".symlinks/plugins/camera_avfoundation/ios" + emoji_picker_flutter: + :path: ".symlinks/plugins/emoji_picker_flutter/ios" Flutter: :path: Flutter flutter_native_splash: @@ -220,40 +225,41 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/webview_flutter_wkwebview/darwin" SPEC CHECKSUMS: - agora_rtc_engine: da45ea14c402317c9e22fdb9ffe504d9a1acbe68 - agora_rtm: 171fb2ddc9da71ca2c30780118a5bc6d005aed49 - AgoraInfra_iOS: 3691b2b277a1712a35ae96de25af319de0d73d08 - AgoraIrisRTC_iOS: eab58c126439adf5ec99632828a558ea216860da + agora_rtc_engine: 7434787c0b5284d803c31c726562b8399b8c1744 + agora_rtm: 7b085b01b7c7ed083483e5d1947d48c960e6a62d + AgoraInfra_iOS: 65e11a2183ab7836258768868d06058c22701b13 + AgoraIrisRTC_iOS: dd3d957c25be6bd2b2a5d03fe706ebe8a46909f0 AgoraIrisRTM_iOS: 8db20697f717de6e1db5dd4c842432889f284220 - AgoraRtcEngine_iOS: 97e2398a2addda9057815a2a583a658e36796ff6 + AgoraRtcEngine_iOS: 5092a058c7b2842db39d8ca614d451af6f84969a AgoraRtm: d92cdfca825f3e6817c315d7dd6403742494f7ca - app_settings: 58017cd26b604ae98c3e65acbdd8ba173703cc82 - audioplayers_darwin: 4027b33a8f471d996c13f71cb77f0b1583b5d923 - camera_avfoundation: 281867ff09f1da66f031a184ecfbc6f2e625c9f5 + app_settings: 5127ae0678de1dcc19f2293271c51d37c89428b2 + audioplayers_darwin: 4f9ca89d92d3d21cec7ec580e78ca888e5fb68bd + camera_avfoundation: 5675ca25298b6f81fa0a325188e7df62cc217741 + emoji_picker_flutter: ece213fc274bdddefb77d502d33080dc54e616cc Flutter: cabc95a1d2626b1b06e7179b784ebcf0c0cde467 - flutter_native_splash: df59bb2e1421aa0282cb2e95618af4dcb0c56c29 - fluwx: 95a2274c23418c1098940bd00dcfe7c975bb0550 - HyphenateChat: 4523c7fb2075771c49a2c492b31544d6cc82ff50 - im_flutter_sdk_ios: 6570b291875ab7b3016e8d21fc0ef58ab347cd38 - image_picker_ios: 4f2f91b01abdb52842a8e277617df877e40f905b - iris_method_channel: 4e3fe7fe6b2db1b84feae956e98ce1479402627a + flutter_native_splash: c32d145d68aeda5502d5f543ee38c192065986cf + fluwx: 2ef787502fccb3f3596b380509001a8ea71cbbff + HyphenateChat: ec813941100d602d24e06b04b867474d634cb39d + im_flutter_sdk_ios: fafe8d1fc7fb81592d81a88ddcc907042117cf6c + image_picker_ios: e0ece4aa2a75771a7de3fa735d26d90817041326 + iris_method_channel: 7d661cf3259b3009ae423508470dbeb9374446ee libwebp: 02b23773aedb6ff1fd38cec7a77b81414c6842a8 - location_plugin: 0b3c55050267925da87176add5bf67c67c8be7ec - package_info_plus: c0502532a26c7662a62a356cebe2692ec5fe4ec4 - path_provider_foundation: 0b743cbb62d8e47eab856f09262bb8c1ddcfe6ba - permission_handler_apple: 9878588469a2b0d0fc1e048d9f43605f92e6cec2 - photo_manager: 647b6f5c5057632e2d00e2921c6ce3437ded57a9 - record_ios: 840d21cce013c5a3b2168b74a54ebdb4136359e2 - sensors_plus: 7229095999f30740798f0eeef5cd120357a8f4f2 - shared_preferences_foundation: 5086985c1d43c5ba4d5e69a4e8083a389e2909e6 - sqflite_darwin: 5a7236e3b501866c1c9befc6771dfd73ffb8702d - url_launcher_ios: bb13df5870e8c4234ca12609d04010a21be43dfa - video_player_avfoundation: 7993f492ae0bd77edaea24d9dc051d8bb2cd7c86 - video_thumbnail: c4e2a3c539e247d4de13cd545344fd2d26ffafd1 - wakelock_plus: 76957ab028e12bfa4e66813c99e46637f367fc7e - webview_flutter_wkwebview: 29eb20d43355b48fe7d07113835b9128f84e3af4 + location_plugin: 298d64961a9c4c878cb4661a8c077023a20f585f + package_info_plus: af8e2ca6888548050f16fa2f1938db7b5a5df499 + path_provider_foundation: bb55f6dbba17d0dccd6737fe6f7f34fbd0376880 + permission_handler_apple: 4ed2196e43d0651e8ff7ca3483a069d469701f2d + photo_manager: fe4cbb0808b96f8be4af7ce6ae18dcd9c9b983c6 + record_ios: f75fa1d57f840012775c0e93a38a7f3ceea1a374 + sensors_plus: 6a11ed0c2e1d0bd0b20b4029d3bad27d96e0c65b + shared_preferences_foundation: 7036424c3d8ec98dfe75ff1667cb0cd531ec82bb + sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0 + url_launcher_ios: 7a95fa5b60cc718a708b8f2966718e93db0cef1b + video_player_avfoundation: dd410b52df6d2466a42d28550e33e4146928280a + video_thumbnail: b637e0ad5f588ca9945f6e2c927f73a69a661140 + wakelock_plus: e29112ab3ef0b318e58cfa5c32326458be66b556 + webview_flutter_wkwebview: 8ebf4fded22593026f7dbff1fbff31ea98573c8d WechatOpenSDK-XCFramework: ff342ae616bb86df3d236aca38059dfd4bc4a949 -PODFILE CHECKSUM: 9f921d5f3a6aff46b310102d923e8942abc7114d +PODFILE CHECKSUM: 41486ec64c29f62dbac3d6ff9ca3fe04ec701a07 COCOAPODS: 1.16.2 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index dbebfd0..1bc00e4 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -296,14 +296,10 @@ inputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); - inputPaths = ( - ); name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); - outputPaths = ( - ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; @@ -317,14 +313,10 @@ inputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist", ); - inputPaths = ( - ); name = "[CP] Copy Pods Resources"; outputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist", ); - outputPaths = ( - ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; diff --git a/lib/controller/mine/edit_info_controller.dart b/lib/controller/mine/edit_info_controller.dart index 80dea06..8bfda57 100644 --- a/lib/controller/mine/edit_info_controller.dart +++ b/lib/controller/mine/edit_info_controller.dart @@ -342,14 +342,14 @@ class EditInfoController extends GetxController { Future handleCameraCapture(int type) async { try { // 请求相机权限 - final ok = await _ensurePermission( - Permission.camera, - denyToast: '相机权限被拒绝,请在设置中允许访问相机', - ); - if (!ok) return; - - // 请求麦克风权限(部分设备拍照/录像会一并请求建议预授权) - await _ensurePermission(Permission.microphone, denyToast: '麦克风权限被拒绝'); + // final ok = await _ensurePermission( + // Permission.camera, + // denyToast: '相机权限被拒绝,请在设置中允许访问相机', + // ); + // if (!ok) return; + // + // // 请求麦克风权限(部分设备拍照/录像会一并请求建议预授权) + // await _ensurePermission(Permission.microphone, denyToast: '麦克风权限被拒绝'); // 权限通过后拍照 final ImagePicker picker = ImagePicker(); diff --git a/lib/widget/message/voice_input_view.dart b/lib/widget/message/voice_input_view.dart index f7931a6..5a36fd1 100644 --- a/lib/widget/message/voice_input_view.dart +++ b/lib/widget/message/voice_input_view.dart @@ -56,10 +56,11 @@ class _VoiceInputViewState extends State { // 开始录音 Future _startRecording() async { // 请求麦克风权限 - final status = await Permission.microphone.request(); - if (!status.isGranted) { - return; - } + // final status = await Permission.microphone.request(); + // print(status); + // if (!status.isGranted) { + // return; + // } try { if (await _audioRecorder.hasPermission()) { @@ -139,6 +140,7 @@ class _VoiceInputViewState extends State { // 处理长按开始 void _onLongPressStart(LongPressStartDetails details) { + print(11111); _panStartPosition = details.globalPosition; _startRecording(); } @@ -334,6 +336,7 @@ class _VoiceInputViewState extends State { // 麦克风按钮 Listener( onPointerDown: (details) { + print(123123); // 记录初始位置,用于后续拖拽检测 _panStartPosition = details.position; }, diff --git a/pubspec.yaml b/pubspec.yaml index a47de6e..c4eb228 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -66,7 +66,7 @@ dependencies: video_thumbnail: ^0.5.3 # 视频缩略图生成 fluwx: ^5.7.5 # # tobias: ^5.3.1 - agora_rtc_engine: ^6.5.3 + agora_rtc_engine: 6.5.1 agora_rtm: ^2.2.5 agora_token_generator: ^1.0.0 location_plugin: