fix: 处理厂商平台有时候获取到registrationId和token为空的情况
This commit is contained in:
parent
1c74b54cd4
commit
c6dce9eb00
@ -83,12 +83,16 @@ class XSJPushProvider {
|
||||
final int cmdCode = data['cmd'];
|
||||
switch (cmdCode) {
|
||||
case CMD_GET_REGISTRATION_ID:
|
||||
await Storage.setString(pushDeviceID, data['message']);
|
||||
AppLog.log('flutter get registration id : ${data['message']}');
|
||||
_jpushRegistrationIdCompleter.complete(<String, dynamic>{
|
||||
'channel': 'jiguang',
|
||||
'channelToken': data['message']
|
||||
});
|
||||
if (!_jpushRegistrationIdCompleter.isCompleted &&
|
||||
data['message'] != null) {
|
||||
await Storage.setString(pushDeviceID, data['message']);
|
||||
AppLog.log('flutter get registration id : ${data['message']}');
|
||||
_jpushRegistrationIdCompleter.complete(<String, dynamic>{
|
||||
'channel': 'jiguang',
|
||||
'channelToken': data['message']
|
||||
});
|
||||
}
|
||||
|
||||
// final String? channel2TokenStr =
|
||||
// await Storage.getString(vendorPushChannelInfo);
|
||||
// if (Platform.isAndroid && channel2TokenStr != null) {
|
||||
@ -96,13 +100,15 @@ class XSJPushProvider {
|
||||
// }
|
||||
break;
|
||||
case CMD_GET_TOKEN:
|
||||
final Map<String, dynamic> channel2Token = <String, dynamic>{
|
||||
'channel': channelTypeMapping[data['platform']],
|
||||
'channelToken': data['token']
|
||||
};
|
||||
await Storage.setString(
|
||||
vendorPushChannelInfo, jsonEncode(channel2Token));
|
||||
_vendorTokenCompleter.complete(channel2Token);
|
||||
if (!_vendorTokenCompleter.isCompleted && data['token'] != null) {
|
||||
final Map<String, dynamic> channel2Token = <String, dynamic>{
|
||||
'channel': channelTypeMapping[data['platform']],
|
||||
'channelToken': data['token']
|
||||
};
|
||||
await Storage.setString(
|
||||
vendorPushChannelInfo, jsonEncode(channel2Token));
|
||||
_vendorTokenCompleter.complete(channel2Token);
|
||||
}
|
||||
break;
|
||||
}
|
||||
},
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user