You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
aku_new_community/lib/utils/message_parser.dart

30 lines
787 B

import 'dart:convert';
3 years ago
import 'package:aku_new_community/utils/websocket/fire_dialog.dart';
class MessageParser {
final Map<String, dynamic> message;
String subTitle = '';
String type = '0';
MessageParser(rawMessage) : message = Map<String, dynamic>.from(rawMessage);
3 years ago
4 years ago
//TODO 只支持Android端显示消息需要适配iOS
Future shot() async {
///副标题
subTitle = message['alert'];
Map<dynamic, dynamic> rawExtras = message['extras'];
///extra value
String? androidExtra = rawExtras['cn.jpush.android.EXTRA'];
if (androidExtra == null) return;
Map<String, dynamic> _innerMap = jsonDecode(androidExtra);
type = _innerMap['type'] ?? '0';
switch (type) {
case '1':
await FireDialog.fireAlarm(subTitle);
}
}
}