fix: 处理厂商平台有时候获取到registrationId和token为空的情况

This commit is contained in:
Liuyf 2025-02-25 11:49:11 +08:00
parent c6dce9eb00
commit 5aa6958acc

View File

@ -3,6 +3,7 @@ import 'dart:convert';
import 'dart:io'; import 'dart:io';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:get/get.dart';
import 'package:jpush_flutter/jpush_flutter.dart'; import 'package:jpush_flutter/jpush_flutter.dart';
import 'package:star_lock/flavors.dart'; import 'package:star_lock/flavors.dart';
import 'package:star_lock/mine/minePersonInfo/minePersonInfoEditAccount/minePersonInfoEditAccount/mineUnbindPhoneOrEmail_entity.dart'; import 'package:star_lock/mine/minePersonInfo/minePersonInfoEditAccount/minePersonInfoEditAccount/mineUnbindPhoneOrEmail_entity.dart';
@ -83,8 +84,9 @@ class XSJPushProvider {
final int cmdCode = data['cmd']; final int cmdCode = data['cmd'];
switch (cmdCode) { switch (cmdCode) {
case CMD_GET_REGISTRATION_ID: case CMD_GET_REGISTRATION_ID:
if (!_jpushRegistrationIdCompleter.isCompleted && final bool isNullOrBlank =
data['message'] != null) { GetUtils.isNullOrBlank(data['message']) ?? true;
if (!_jpushRegistrationIdCompleter.isCompleted && !isNullOrBlank) {
await Storage.setString(pushDeviceID, data['message']); await Storage.setString(pushDeviceID, data['message']);
AppLog.log('flutter get registration id : ${data['message']}'); AppLog.log('flutter get registration id : ${data['message']}');
_jpushRegistrationIdCompleter.complete(<String, dynamic>{ _jpushRegistrationIdCompleter.complete(<String, dynamic>{
@ -100,7 +102,9 @@ class XSJPushProvider {
// } // }
break; break;
case CMD_GET_TOKEN: case CMD_GET_TOKEN:
if (!_vendorTokenCompleter.isCompleted && data['token'] != null) { final bool isNullOrBlank =
GetUtils.isNullOrBlank(data['token']) ?? true;
if (!_vendorTokenCompleter.isCompleted && !isNullOrBlank) {
final Map<String, dynamic> channel2Token = <String, dynamic>{ final Map<String, dynamic> channel2Token = <String, dynamic>{
'channel': channelTypeMapping[data['platform']], 'channel': channelTypeMapping[data['platform']],
'channelToken': data['token'] 'channelToken': data['token']