Browse Source

Merge branch 'new_dev' of https://github.com/deepcloud2048/deep_voice into liwei

weicu
liwei1dao 1 year ago
parent
commit
01eadb2347
  1. 26
      ios/Runner.xcodeproj/project.pbxproj
  2. 48
      ios/Runner/Info.plist
  3. 24
      ios/Runner/Runner.entitlements
  4. 2
      lib/core/translations/language/en_us.dart
  5. 2
      lib/core/translations/language/ru_ru.dart
  6. 2
      lib/core/translations/language/th_th.dart
  7. 2
      lib/core/translations/language/tr_tr.dart
  8. 4
      lib/core/translations/language/uk_ua.dart
  9. 4
      lib/core/translations/language/zh_cn.dart
  10. 4
      lib/core/translations/language/zh_hk.dart
  11. 5
      lib/modules/meeting/views/bottomSheet/share_bottom_sheet.dart
  12. 8
      lib/modules/pairing/controllers/pairing_controller.dart
  13. 2
      lib/modules/pairing/views/pairing_view.dart
  14. 8
      lib/modules/splash/controllers/splash_controller.dart
  15. 2
      local_plugins/amap_service/ios/Classes/AmapService.swift
  16. 2
      local_plugins/amap_service/ios/Classes/AmapServicePlugin.swift
  17. 2
      local_plugins/spotify_sdk/ios/spotify_sdk.podspec
  18. 1
      pubspec.yaml

26
ios/Runner.xcodeproj/project.pbxproj

@ -514,7 +514,7 @@
NEW_SETTING = ""; NEW_SETTING = "";
SDKROOT = iphoneos; SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos; SUPPORTED_PLATFORMS = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2"; TARGETED_DEVICE_FAMILY = 1;
VALIDATE_PRODUCT = YES; VALIDATE_PRODUCT = YES;
}; };
name = Profile; name = Profile;
@ -539,8 +539,14 @@
MARKETING_VERSION = 1.0.1; MARKETING_VERSION = 1.0.1;
PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans; PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
REGISTER_APP_GROUPS = NO;
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
SUPPORTS_MACCATALYST = YES;
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES;
SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = YES;
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
SWIFT_VERSION = 5.0; SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic"; VERSIONING_SYSTEM = "apple-generic";
}; };
name = Profile; name = Profile;
@ -572,6 +578,7 @@
BUNDLE_LOADER = "$(TEST_HOST)"; BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic; CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1; CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = K39FB49XKY;
GENERATE_INFOPLIST_FILE = YES; GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 18.0; IPHONEOS_DEPLOYMENT_TARGET = 18.0;
MARKETING_VERSION = 1.0; MARKETING_VERSION = 1.0;
@ -589,6 +596,7 @@
BUNDLE_LOADER = "$(TEST_HOST)"; BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic; CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1; CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = K39FB49XKY;
GENERATE_INFOPLIST_FILE = YES; GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 18.0; IPHONEOS_DEPLOYMENT_TARGET = 18.0;
MARKETING_VERSION = 1.0; MARKETING_VERSION = 1.0;
@ -654,7 +662,7 @@
NEW_SETTING = ""; NEW_SETTING = "";
ONLY_ACTIVE_ARCH = YES; ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos; SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2"; TARGETED_DEVICE_FAMILY = 1;
}; };
name = Debug; name = Debug;
}; };
@ -709,7 +717,7 @@
SUPPORTED_PLATFORMS = iphoneos; SUPPORTED_PLATFORMS = iphoneos;
SWIFT_COMPILATION_MODE = wholemodule; SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_OPTIMIZATION_LEVEL = "-O";
TARGETED_DEVICE_FAMILY = "1,2"; TARGETED_DEVICE_FAMILY = 1;
VALIDATE_PRODUCT = YES; VALIDATE_PRODUCT = YES;
}; };
name = Release; name = Release;
@ -734,9 +742,15 @@
MARKETING_VERSION = 1.0.1; MARKETING_VERSION = 1.0.1;
PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans; PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
REGISTER_APP_GROUPS = NO;
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
SUPPORTS_MACCATALYST = YES;
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES;
SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = YES;
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 5.0; SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic"; VERSIONING_SYSTEM = "apple-generic";
}; };
name = Debug; name = Debug;
@ -761,8 +775,14 @@
MARKETING_VERSION = 1.0.1; MARKETING_VERSION = 1.0.1;
PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans; PRODUCT_BUNDLE_IDENTIFIER = com.saitong.voitrans;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
REGISTER_APP_GROUPS = NO;
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
SUPPORTS_MACCATALYST = YES;
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES;
SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = YES;
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
SWIFT_VERSION = 5.0; SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic"; VERSIONING_SYSTEM = "apple-generic";
}; };
name = Release; name = Release;

48
ios/Runner/Info.plist

@ -57,12 +57,6 @@
<false/> <false/>
<key>FacebookClientToken</key> <key>FacebookClientToken</key>
<string>193d0a2b1757c41cfa557ea8e8f21c33</string> <string>193d0a2b1757c41cfa557ea8e8f21c33</string>
<!-- 明确禁用用户跟踪功能 -->
<key>SKAdNetworkItems</key>
<array/>
<!-- 禁用广告跟踪 -->
<key>NSAdvertisingAttributionReportEndpoint</key>
<string></string>
<key>LSApplicationQueriesSchemes</key> <key>LSApplicationQueriesSchemes</key>
<array> <array>
<string>weixin</string> <string>weixin</string>
@ -86,6 +80,8 @@
</array> </array>
<key>LSRequiresIPhoneOS</key> <key>LSRequiresIPhoneOS</key>
<true/> <true/>
<key>NSAdvertisingAttributionReportEndpoint</key>
<string></string>
<key>NSAppTransportSecurity</key> <key>NSAppTransportSecurity</key>
<dict> <dict>
<key>NSAllowsArbitraryLoads</key> <key>NSAllowsArbitraryLoads</key>
@ -94,23 +90,27 @@
<true/> <true/>
</dict> </dict>
<key>NSBluetoothAlwaysUsageDescription</key> <key>NSBluetoothAlwaysUsageDescription</key>
<string>需要蓝牙权限用于连接和管理音频设备</string> <string>Bluetooth permission is required to connect and manage audio devices</string>
<key>NSBluetoothPeripheralUsageDescription</key> <key>NSBluetoothPeripheralUsageDescription</key>
<string>需要蓝牙权限用于连接和管理音频设备</string> <string>Bluetooth permission is required to connect and manage audio devices</string>
<key>NSCalendarsUsageDescription</key> <key>NSCalendarsUsageDescription</key>
<string>需要日历权限用于安排和管理您的音频会议和录音任务</string> <string>Calendar permission is required to schedule and manage your audio meetings and recording tasks</string>
<key>NSCameraUsageDescription</key> <key>NSCameraUsageDescription</key>
<string>需要相机权限用于扫描二维码和视频通话功能</string> <string>Camera permission is required for QR code scanning and video calling functions</string>
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key> <key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>语音助手需要位置权限来为您提供基于位置的信息和服务</string> <string>Location access enables the app to provide location-based voice translation services, such as translating local place names and providing contextual information relevant to your current location during conversations.</string>
<key>NSLocationWhenInUseUsageDescription</key> <key>NSLocationWhenInUseUsageDescription</key>
<string>语音助手需要位置权限来为您提供基于位置的信息和服务</string> <string>Location access enables the app to provide location-based voice translation services, such as translating local place names and providing contextual information relevant to your current location during conversations.</string>
<key>NSMicrophoneUsageDescription</key> <key>NSMicrophoneUsageDescription</key>
<string>需要麦克风权限用于语音识别和录音功能</string> <string>Our app's voice AI interaction features (such as voice wake-up for AI, issuing commands, and real-time conversations) require microphone access. With this permission, you can interact with AI directly through speech, improving operational efficiency. We strictly protect your voice data—only used for real-time processing of interaction requests, and raw audio will not be stored.</string>
<key>NSMotionUsageDescription</key> <key>NSMotionUsageDescription</key>
<string>我们需要访问您的运动数据以提供更精准的导航服务</string> <string>This app uses motion and fitness data to detect when you're walking or moving, which helps optimize voice recognition accuracy and automatically adjust microphone sensitivity for better audio recording quality during different activities.</string>
<key>NSPhotoLibraryUsageDescription</key> <key>NSPhotoLibraryUsageDescription</key>
<string>需要相册权限用于保存录音文件和导入音频文件</string> <string>Photo library permission is required to save recording files and import audio files</string>
<key>NSUserTrackingUsageDescription</key>
<string>This identifier will be used to deliver personalized ads to you.</string>
<key>SKAdNetworkItems</key>
<array/>
<key>UIApplicationSupportsIndirectInputEvents</key> <key>UIApplicationSupportsIndirectInputEvents</key>
<true/> <true/>
<key>UIBackgroundModes</key> <key>UIBackgroundModes</key>
@ -119,22 +119,20 @@
<string>audio</string> <string>audio</string>
<string>location</string> <string>location</string>
</array> </array>
<key>UIDeviceFamily</key>
<array>
<string>1</string>
</array>
<key>UILaunchStoryboardName</key> <key>UILaunchStoryboardName</key>
<string>LaunchScreen</string> <string>LaunchScreen</string>
<key>UIMainStoryboardFile</key> <key>UIMainStoryboardFile</key>
<string>Main</string> <string>Main</string>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>UISupportedInterfaceOrientations~ipad</key> <key>UISupportedInterfaceOrientations~ipad</key>
<array> <array>
<string>UIInterfaceOrientationPortrait</string> <string>UIInterfaceOrientationPortrait</string> <!-- 竖屏正向 -->
<string>UIInterfaceOrientationPortraitUpsideDown</string> <string>UIInterfaceOrientationPortraitUpsideDown</string> <!-- 竖屏倒置(关键缺失项) -->
<string>UIInterfaceOrientationLandscapeLeft</string> <string>UIInterfaceOrientationLandscapeLeft</string> <!-- 横屏左 -->
<string>UIInterfaceOrientationLandscapeRight</string> <string>UIInterfaceOrientationLandscapeRight</string> <!-- 横屏右 -->
</array> </array>
<key>UIViewControllerBasedStatusBarAppearance</key> <key>UIViewControllerBasedStatusBarAppearance</key>
<false/> <false/>

24
ios/Runner/Runner.entitlements

@ -2,6 +2,10 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"> <plist version="1.0">
<dict> <dict>
<key>com.apple.developer.applesignin</key>
<array>
<string>Default</string>
</array>
<key>com.apple.developer.associated-domains</key> <key>com.apple.developer.associated-domains</key>
<array> <array>
<string>applinks:voitrans.net</string> <string>applinks:voitrans.net</string>
@ -10,9 +14,21 @@
<true/> <true/>
<key>com.apple.external-accessory.wireless-configuration</key> <key>com.apple.external-accessory.wireless-configuration</key>
<true/> <true/>
<key>com.apple.developer.applesignin</key> <key>com.apple.security.app-sandbox</key>
<array> <true/>
<string>Default</string> <key>com.apple.security.device.audio-input</key>
</array> <true/>
<key>com.apple.security.device.bluetooth</key>
<true/>
<key>com.apple.security.device.camera</key>
<true/>
<key>com.apple.security.network.client</key>
<true/>
<key>com.apple.security.personal-information.calendars</key>
<true/>
<key>com.apple.security.personal-information.location</key>
<true/>
<key>com.apple.security.personal-information.photos-library</key>
<true/>
</dict> </dict>
</plist> </plist>

2
lib/core/translations/language/en_us.dart

@ -742,7 +742,7 @@ const Map<String, String> enUS = {
// 配对模块 // 配对模块
// 配对页面 // 配对页面
"devicePairing": "Device Pairing", "devicePairing": "Device Pairing",
"connectYourDeepSoundHeadset": "Connect Your DeepSound Headset", "connectYourDeepSoundHeadset": "Connect Your Voitrans Headset",
"bind": "Bind", "bind": "Bind",
"authorizeBind": "Authorize Binding", "authorizeBind": "Authorize Binding",
"enterCode": "Please enter code", "enterCode": "Please enter code",

2
lib/core/translations/language/ru_ru.dart

@ -702,7 +702,7 @@ const Map<String, String> ruRU = {
// 配对模块 // 配对模块
// 配对页面 (pairing_view.dart & pairing_view_new.dart) // 配对页面 (pairing_view.dart & pairing_view_new.dart)
"devicePairing": "Сопряжение устройства", "devicePairing": "Сопряжение устройства",
"connectYourDeepSoundHeadset": "Подключите ваши наушники DeepSound", "connectYourDeepSoundHeadset": "Подключите ваши наушники Voitrans",
"bind": "Привязать", "bind": "Привязать",
"authorizeBind": "Авторизовать привязку", "authorizeBind": "Авторизовать привязку",
"enterCode": "Пожалуйста, введите код", "enterCode": "Пожалуйста, введите код",

2
lib/core/translations/language/th_th.dart

@ -736,7 +736,7 @@ const Map<String, String> thTH = {
'retryAuthorization': 'ลองอนุญาตอีกครั้ง', 'retryAuthorization': 'ลองอนุญาตอีกครั้ง',
'pleaseGrantNecessaryPermissions': 'กรุณาให้สิทธิ์ที่จำเป็น', 'pleaseGrantNecessaryPermissions': 'กรุณาให้สิทธิ์ที่จำเป็น',
'checkFailedRetry': 'การตรวจสอบล้มเหลว โปรดลองอีกครั้ง', 'checkFailedRetry': 'การตรวจสอบล้มเหลว โปรดลองอีกครั้ง',
'pleaseConnectDeepSoundDevice': 'กรุณาเชื่อมต่ออุปกรณ์ DeepSound', 'pleaseConnectDeepSoundDevice': 'กรุณาเชื่อมต่ออุปกรณ์ Voitrans',
'verificationFailedRetry': 'การตรวจสอบล้มเหลว โปรดลองอีกครั้ง', 'verificationFailedRetry': 'การตรวจสอบล้มเหลว โปรดลองอีกครั้ง',
'invalidDeviceAddress': 'ที่อยู่อุปกรณ์ไม่ถูกต้อง', 'invalidDeviceAddress': 'ที่อยู่อุปกรณ์ไม่ถูกต้อง',
'bleDeviceAssociationFailed': 'การเชื่อมโยงอุปกรณ์ BLE ล้มเหลว', 'bleDeviceAssociationFailed': 'การเชื่อมโยงอุปกรณ์ BLE ล้มเหลว',

2
lib/core/translations/language/tr_tr.dart

@ -695,7 +695,7 @@ const Map<String, String> trTR = {
// 配对模块 // 配对模块
// 配对页面 (pairing_view.dart & pairing_view_new.dart) // 配对页面 (pairing_view.dart & pairing_view_new.dart)
"devicePairing": "Cihaz Eşleştirme", "devicePairing": "Cihaz Eşleştirme",
"connectYourDeepSoundHeadset": "DeepSound Kulaklığınızı Bağlayın", "connectYourDeepSoundHeadset": "Voitrans Kulaklığınızı Bağlayın",
"bind": "Bağla", "bind": "Bağla",
"authorizeBind": "Bağlamayı Yetkilendir", "authorizeBind": "Bağlamayı Yetkilendir",
"enterCode": "Lütfen kodu girin", "enterCode": "Lütfen kodu girin",

4
lib/core/translations/language/uk_ua.dart

@ -702,7 +702,7 @@ const Map<String, String> ukUA = {
// 配对模块 // 配对模块
// 配对页面 (pairing_view.dart & pairing_view_new.dart) // 配对页面 (pairing_view.dart & pairing_view_new.dart)
"devicePairing": "Спарювання пристрою", "devicePairing": "Спарювання пристрою",
"connectYourDeepSoundHeadset": "Підключіть ваші навушники DeepSound", "connectYourDeepSoundHeadset": "Підключіть ваші навушники Voitrans",
"bind": "Прив'язати", "bind": "Прив'язати",
"authorizeBind": "Авторизувати прив'язку", "authorizeBind": "Авторизувати прив'язку",
"enterCode": "Будь ласка, введіть код", "enterCode": "Будь ласка, введіть код",
@ -757,7 +757,7 @@ const Map<String, String> ukUA = {
'retryAuthorization': 'Повторити авторизацію', 'retryAuthorization': 'Повторити авторизацію',
'pleaseGrantNecessaryPermissions': 'Будь ласка, надайте необхідні дозволи', 'pleaseGrantNecessaryPermissions': 'Будь ласка, надайте необхідні дозволи',
'checkFailedRetry': 'Перевірка не вдалася, спробуйте ще раз', 'checkFailedRetry': 'Перевірка не вдалася, спробуйте ще раз',
'pleaseConnectDeepSoundDevice': 'Будь ласка, підключіть пристрій DeepSound', 'pleaseConnectDeepSoundDevice': 'Будь ласка, підключіть пристрій Voitrans',
'verificationFailedRetry': 'Перевірка не вдалася, спробуйте ще раз', 'verificationFailedRetry': 'Перевірка не вдалася, спробуйте ще раз',
'invalidDeviceAddress': 'Недійсна адреса пристрою', 'invalidDeviceAddress': 'Недійсна адреса пристрою',
'bleDeviceAssociationFailed': 'Не вдалося асоціювати пристрій BLE', 'bleDeviceAssociationFailed': 'Не вдалося асоціювати пристрій BLE',

4
lib/core/translations/language/zh_cn.dart

@ -684,7 +684,7 @@ const Map<String, String> zhCN = {
// 配对模块 // 配对模块
// 配对页面 (pairing_view.dart & pairing_view_new.dart) // 配对页面 (pairing_view.dart & pairing_view_new.dart)
"devicePairing": "设备配对", "devicePairing": "设备配对",
"connectYourDeepSoundHeadset": "连接您的 DeepSound 耳机", "connectYourDeepSoundHeadset": "连接您的 Voitrans 耳机",
"bind": "绑定", "bind": "绑定",
"authorizeBind": "授权绑定", "authorizeBind": "授权绑定",
"enterCode": "请输入代码", "enterCode": "请输入代码",
@ -736,7 +736,7 @@ const Map<String, String> zhCN = {
'retryAuthorization': '重新授权', 'retryAuthorization': '重新授权',
'pleaseGrantNecessaryPermissions': '请授予必要权限', 'pleaseGrantNecessaryPermissions': '请授予必要权限',
'checkFailedRetry': '检查失败,请重试', 'checkFailedRetry': '检查失败,请重试',
'pleaseConnectDeepSoundDevice': '请连接 DeepSound 设备', 'pleaseConnectDeepSoundDevice': '请连接 Voitrans 设备',
'verificationFailedRetry': '验证失败,请重试', 'verificationFailedRetry': '验证失败,请重试',
'invalidDeviceAddress': '设备地址无效', 'invalidDeviceAddress': '设备地址无效',
'bleDeviceAssociationFailed': 'BLE设备关联失败', 'bleDeviceAssociationFailed': 'BLE设备关联失败',

4
lib/core/translations/language/zh_hk.dart

@ -648,7 +648,7 @@ const Map<String, String> zhHK = {
// 配對模塊 // 配對模塊
// 配對頁面 (pairing_view.dart & pairing_view_new.dart) // 配對頁面 (pairing_view.dart & pairing_view_new.dart)
"devicePairing": "設備配對", "devicePairing": "設備配對",
"connectYourDeepSoundHeadset": "連接您的 DeepSound 耳機", "connectYourDeepSoundHeadset": "連接您的 Voitrans 耳機",
"bind": "綁定", "bind": "綁定",
"authorizeBind": "授權綁定", "authorizeBind": "授權綁定",
"enterCode": "請輸入代碼", "enterCode": "請輸入代碼",
@ -695,7 +695,7 @@ const Map<String, String> zhHK = {
'retryAuthorization': '重新授權', 'retryAuthorization': '重新授權',
'pleaseGrantNecessaryPermissions': '請授予必要權限', 'pleaseGrantNecessaryPermissions': '請授予必要權限',
'checkFailedRetry': '檢查失敗,請重試', 'checkFailedRetry': '檢查失敗,請重試',
'pleaseConnectDeepSoundDevice': '請連接 DeepSound 設備', 'pleaseConnectDeepSoundDevice': '請連接 Voitrans 設備',
'verificationFailedRetry': '驗證失敗,請重試', 'verificationFailedRetry': '驗證失敗,請重試',
'invalidDeviceAddress': '設備地址無效', 'invalidDeviceAddress': '設備地址無效',
'bleDeviceAssociationFailed': 'BLE設備關聯失敗', 'bleDeviceAssociationFailed': 'BLE設備關聯失敗',

5
lib/modules/meeting/views/bottomSheet/share_bottom_sheet.dart

@ -103,7 +103,7 @@ class _ShareBottomSheetState extends State<ShareBottomSheet> {
final result = await SharePlus.instance.share(ShareParams( final result = await SharePlus.instance.share(ShareParams(
title: _controller.meetingData.value.title, title: _controller.meetingData.value.title,
subject: subject:
'DeepSound WEB,由DeepSound.Ai提供支持-实时记录会议纪要,多语言翻译。', 'Voitrans WEB,由DeepSound.Ai提供支持-实时记录会议纪要,多语言翻译。',
uri: Uri.parse( uri: Uri.parse(
'http://web.ideapsound.com/share/$id/$token', 'http://web.ideapsound.com/share/$id/$token',
), ),
@ -281,7 +281,8 @@ class _ShareBottomSheetState extends State<ShareBottomSheet> {
title, title,
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
color: Colors.black87.withValues(alpha: onTap != null ? 1 : 0.5), color:
Colors.black87.withValues(alpha: onTap != null ? 1 : 0.5),
), ),
), ),
), ),

8
lib/modules/pairing/controllers/pairing_controller.dart

@ -181,7 +181,8 @@ class PairingController extends GetxController {
/// 处理蓝牙开关状态变化 /// 处理蓝牙开关状态变化
void _handleBluetoothStateChange(String state) { void _handleBluetoothStateChange(String state) {
if (state == 'off') { if (state == 'off') {
_setError(ErrorType.bluetoothOff, 'pleaseEnableBluetooth'.tr); _setError(
ErrorType.bluetoothOff, 'connectDeepSoundViaSystemBluetooth'.tr);
} else if (state == 'on' && _errorType.value == ErrorType.bluetoothOff) { } else if (state == 'on' && _errorType.value == ErrorType.bluetoothOff) {
// 蓝牙重新开启,恢复流程 // 蓝牙重新开启,恢复流程
Logger.i(_tag, '检测到蓝牙已开启,自动恢复配对流程'); Logger.i(_tag, '检测到蓝牙已开启,自动恢复配对流程');
@ -336,7 +337,7 @@ class PairingController extends GetxController {
switch (_errorType.value) { switch (_errorType.value) {
case ErrorType.bluetoothOff: case ErrorType.bluetoothOff:
showConnectButton.value = true; showConnectButton.value = true;
connectButtonText.value = 'enableBluetooth'.tr; //开启蓝牙 connectButtonText.value = 'goToBluetoothSettings'.tr; //开启蓝牙
break; break;
case ErrorType.noClassicDevice: case ErrorType.noClassicDevice:
showConnectButton.value = true; showConnectButton.value = true;
@ -400,7 +401,8 @@ class PairingController extends GetxController {
final arePermissionsOk = results[1] as bool; final arePermissionsOk = results[1] as bool;
if (!isBluetoothOk) { if (!isBluetoothOk) {
_setError(ErrorType.bluetoothOff, 'pleaseEnableBluetooth'.tr); _setError(
ErrorType.bluetoothOff, 'connectDeepSoundViaSystemBluetooth'.tr);
return; return;
} }

2
lib/modules/pairing/views/pairing_view.dart

@ -481,7 +481,7 @@ class _PairingViewState extends State<PairingView>
final errorType = controller.errorType; final errorType = controller.errorType;
switch (errorType) { switch (errorType) {
case ErrorType.bluetoothOff: case ErrorType.bluetoothOff:
return 'bluetoothTurnedOff'.tr; // 蓝牙已关闭,请打开蓝牙 return 'connectDeepSoundViaSystemBluetooth'.tr; // 蓝牙已关闭,请打开蓝牙
case ErrorType.noPermission: case ErrorType.noPermission:
return 'lackPermissions'.tr; // 缺少蓝牙权限 return 'lackPermissions'.tr; // 缺少蓝牙权限
case ErrorType.noClassicDevice: case ErrorType.noClassicDevice:

8
lib/modules/splash/controllers/splash_controller.dart

@ -1,5 +1,7 @@
import 'dart:async'; import 'dart:async';
import 'dart:io'; import 'dart:io';
import 'package:app_tracking_transparency/app_tracking_transparency.dart';
import '../../../data/models/appconfig.dart'; import '../../../data/models/appconfig.dart';
import '../../../data/models/appconfig_model.dart'; import '../../../data/models/appconfig_model.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -47,6 +49,12 @@ class SplashController extends GetxController {
_startNormalFlow(); _startNormalFlow();
} }
}); });
//弹出用户追中问题
WidgetsFlutterBinding.ensureInitialized().addPostFrameCallback((_) async {
final status =
await AppTrackingTransparency.requestTrackingAuthorization();
});
} }
void _startNormalFlow() { void _startNormalFlow() {

2
local_plugins/amap_service/ios/Classes/AmapService.swift

@ -24,7 +24,7 @@ public class AmapService: NSObject, AMapNaviDriveManagerDelegate {
// 设置高德地图服务 // 设置高德地图服务
// 1. 设置隐私合规 // 1. 设置隐私合规
AMapServices.shared()?.enableHTTPS = true AMapServices.shared()?.enableHTTPS = true
AMapServices.shared()?.apiKey = "0b704e172b7ade5a7a18728e8f517a05" AMapServices.shared()?.apiKey = "6144a636c24dc9f2e1e57f7597849cf7"
} }
public func startNavigation(from start: String, to end: String) { public func startNavigation(from start: String, to end: String) {

2
local_plugins/amap_service/ios/Classes/AmapServicePlugin.swift

@ -22,7 +22,7 @@ public class AmapServicePlugin: NSObject, FlutterPlugin, FlutterStreamHandler {
// 高德SDK初始化 // 高德SDK初始化
DispatchQueue.main.async { DispatchQueue.main.async {
AMapServices.shared()?.apiKey = "0b704e172b7ade5a7a18728e8f517a05" AMapServices.shared()?.apiKey = "6144a636c24dc9f2e1e57f7597849cf7"
AMapServices.shared()?.enableHTTPS = true AMapServices.shared()?.enableHTTPS = true
if #available(iOS 13.0, *) { if #available(iOS 13.0, *) {

2
local_plugins/spotify_sdk/ios/spotify_sdk.podspec

@ -20,7 +20,7 @@ Unofficial Spotify Flutter SDK.
# Flutter.framework does not contain a i386 slice. Only x86_64 simulators are supported. # Flutter.framework does not contain a i386 slice. Only x86_64 simulators are supported.
s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'VALID_ARCHS[sdk=iphonesimulator*]' => 'x86_64' } s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'VALID_ARCHS[sdk=iphonesimulator*]' => 'x86_64' }
s.swift_version = '5.0' s.swift_version = '5.0'
s.prepare_command = './prepare-iOS-SDK.sh' # s.prepare_command = './prepare-iOS-SDK.sh'
s.vendored_frameworks = 'ios-sdk/SpotifyiOS.xcframework' s.vendored_frameworks = 'ios-sdk/SpotifyiOS.xcframework'
s.preserve_paths = 'ios-sdk/SpotifyiOS.xcframework' s.preserve_paths = 'ios-sdk/SpotifyiOS.xcframework'
end end

1
pubspec.yaml

@ -69,6 +69,7 @@ dependencies:
flutter_image_compress: ^2.4.0 flutter_image_compress: ^2.4.0
common_utils: ^2.1.0 common_utils: ^2.1.0
image_gallery_saver_plus: ^4.0.1 image_gallery_saver_plus: ^4.0.1
app_tracking_transparency: ^2.0.1
dio: ^5.8.0+1 dio: ^5.8.0+1
sqflite: ^2.4.2 sqflite: ^2.4.2
path: ^1.9.1 path: ^1.9.1

Loading…
Cancel
Save