|
|
@ -18,6 +18,7 @@ import '../../../data/services/bluetooth_manager.dart'; |
|
|
import '../../../data/services/ble_manager.dart'; |
|
|
import '../../../data/services/ble_manager.dart'; |
|
|
import '../../../core/utils/permission_util.dart'; |
|
|
import '../../../core/utils/permission_util.dart'; |
|
|
import '../../../data/services/version_update_service.dart'; |
|
|
import '../../../data/services/version_update_service.dart'; |
|
|
|
|
|
import '../../../data/models/channel_app_model.dart'; |
|
|
|
|
|
|
|
|
/// 配对状态枚举 - 简化版本 |
|
|
/// 配对状态枚举 - 简化版本 |
|
|
enum PairingState { |
|
|
enum PairingState { |
|
|
@ -569,15 +570,20 @@ class PairingController extends GetxController with WidgetsBindingObserver { |
|
|
return _bluetoothManager.bluetoothState != 'off'; |
|
|
return _bluetoothManager.bluetoothState != 'off'; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/// 检查是否为华为设备 |
|
|
/// 检查是否为华为设备或者华为渠道 |
|
|
bool _isHuaweiDevice() { |
|
|
bool _isHuaweiDevice() { |
|
|
final deviceBrand = versionService.cachedDeviceBrand; |
|
|
final deviceBrand = versionService.cachedDeviceBrand; |
|
|
|
|
|
final channel = versionService.cachedChannel; |
|
|
return deviceBrand.isNotEmpty && |
|
|
return deviceBrand.isNotEmpty && |
|
|
(deviceBrand.contains('huawei') || deviceBrand.contains('华为')); |
|
|
(deviceBrand.contains('huawei') || deviceBrand.contains('华为')) || |
|
|
|
|
|
(channel == UserChannel.CHINA_HUAWEI); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/// 检查权限 |
|
|
/// 检查权限 |
|
|
Future<bool> _checkPermissions() async { |
|
|
Future<bool> _checkPermissions() async { |
|
|
|
|
|
if (isHuaweiDevice) { |
|
|
|
|
|
isHuaweiHasChecked = _storage.read('isHuaweiHasChecked') ?? false; |
|
|
|
|
|
} |
|
|
//如果是华为设备,且已经检查过,直接返回权限状态 |
|
|
//如果是华为设备,且已经检查过,直接返回权限状态 |
|
|
if (isHuaweiDevice && isHuaweiHasChecked) { |
|
|
if (isHuaweiDevice && isHuaweiHasChecked) { |
|
|
final bluetoothScanStatus = await Permission.bluetoothScan.status; |
|
|
final bluetoothScanStatus = await Permission.bluetoothScan.status; |
|
|
|