|
...
|
...
|
@@ -111,6 +111,8 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { |
|
|
|
|
|
|
|
Map<String, dynamic> dataSp = Map();
|
|
|
|
|
|
|
|
final XgFlutterPlugin tpush = new XgFlutterPlugin();
|
|
|
|
|
|
|
|
//实现监听
|
|
|
|
Future<dynamic> platformCallHandler(MethodCall call) async {
|
|
|
|
switch (call.method) {
|
|
...
|
...
|
@@ -226,9 +228,9 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { |
|
|
|
create: (_) => CollectStoreProvider(), child: MyPage()),
|
|
|
|
)));
|
|
|
|
WidgetsBinding.instance.addPostFrameCallback((_) async {
|
|
|
|
bus.on('refresh_token', (arg) {
|
|
|
|
initPlatformState();
|
|
|
|
});
|
|
|
|
// bus.on('refresh_token', (arg) {
|
|
|
|
// initPlatformState();
|
|
|
|
// });
|
|
|
|
getSellerVersion();
|
|
|
|
|
|
|
|
initPlatformState();
|
|
...
|
...
|
@@ -733,7 +735,9 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { |
|
|
|
|
|
|
|
//获取点击通知栏的自定义参数
|
|
|
|
_getIntent(Map param) async {
|
|
|
|
_clearBadge(() {});
|
|
|
|
// if (param != null) {
|
|
|
|
_clearBadge(() {});
|
|
|
|
// }
|
|
|
|
|
|
|
|
Map notifyParam = param;
|
|
|
|
if (Platform.isIOS && param != null) {
|
|
...
|
...
|
@@ -961,11 +965,23 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { |
|
|
|
// App.sp.setBool("h_notification", true);
|
|
|
|
|
|
|
|
/// 开启DEBUG
|
|
|
|
XgFlutterPlugin().setEnableDebug(false);
|
|
|
|
tpush.setEnableDebug(false);
|
|
|
|
|
|
|
|
String token = await XgFlutterPlugin.xgToken;
|
|
|
|
print(token);
|
|
|
|
|
|
|
|
if (token != null && token.length > 0) {
|
|
|
|
|
|
|
|
userTokenInit(token);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// 添加回调事件
|
|
|
|
XgFlutterPlugin().addEventHandler(
|
|
|
|
tpush.addEventHandler(
|
|
|
|
onRegisteredDeviceToken: (String msg) async {
|
|
|
|
// String token = await XgFlutterPlugin.xgToken;
|
|
|
|
// print(token);
|
|
|
|
// userTokenInit(token);
|
|
|
|
|
|
|
|
print("flutter onRegisteredDeviceToken: $msg");
|
|
|
|
},
|
|
|
|
onRegisteredDone: (String msg) async {
|
|
...
|
...
|
@@ -984,11 +1000,13 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { |
|
|
|
LogUtil.v("注册成功:$token");
|
|
|
|
// Utils.showToast("注册成功:$token");
|
|
|
|
userTokenInit(token);
|
|
|
|
// XgFlutterPlugin().setAppBadge(0);
|
|
|
|
// Utils.showToast("注册成功:$token");
|
|
|
|
// tpush.setAppBadge(0);
|
|
|
|
}
|
|
|
|
},
|
|
|
|
unRegistered: (String msg) async {
|
|
|
|
print("flutter unRegistered: $msg");
|
|
|
|
// Utils.showToast(msg);
|
|
|
|
},
|
|
|
|
onReceiveNotificationResponse: (Map<String, dynamic> msg) async {
|
|
|
|
print("flutter onReceiveNotificationResponse $msg");
|
|
...
|
...
|
@@ -1049,7 +1067,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { |
|
|
|
print("flutter xgPushDidSetBadge: $msg");
|
|
|
|
|
|
|
|
// /// 在此可设置应用角标
|
|
|
|
// XgFlutterPlugin().setAppBadge(0);
|
|
|
|
// tpush.setAppBadge(0);
|
|
|
|
},
|
|
|
|
xgPushDidBindWithIdentifier: (String msg) async {
|
|
|
|
print("flutter xgPushDidBindWithIdentifier: $msg");
|
|
...
|
...
|
@@ -1297,53 +1315,47 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { |
|
|
|
if (xgCount > 5) return;
|
|
|
|
if (Platform.isAndroid) {
|
|
|
|
/// 设置OPPO AppKey 和 AppSecret
|
|
|
|
if (await XgFlutterPlugin().getXgAndroidApi().isOppoRom()) {
|
|
|
|
XgFlutterPlugin().getXgAndroidApi().enableOppoNotification();
|
|
|
|
XgFlutterPlugin().getXgAndroidApi().setOppoPushAppId(appId: "30260281");
|
|
|
|
XgFlutterPlugin()
|
|
|
|
if (await tpush.getXgAndroidApi().isOppoRom()) {
|
|
|
|
tpush.getXgAndroidApi().enableOppoNotification();
|
|
|
|
tpush.getXgAndroidApi().setOppoPushAppId(appId: "30260281");
|
|
|
|
tpush
|
|
|
|
.getXgAndroidApi()
|
|
|
|
.setOppoPushAppKey(appKey: "94d77d10e7bb4c60bcf18a84c8ca8bdd");
|
|
|
|
}
|
|
|
|
// 设置小米 AppID 和 AppKey。
|
|
|
|
if (await XgFlutterPlugin().getXgAndroidApi().isMiuiRom()) {
|
|
|
|
XgFlutterPlugin()
|
|
|
|
.getXgAndroidApi()
|
|
|
|
.setMiPushAppId(appId: "2882303761518639456");
|
|
|
|
XgFlutterPlugin()
|
|
|
|
.getXgAndroidApi()
|
|
|
|
.setMiPushAppKey(appKey: "5231863961456");
|
|
|
|
if (await tpush.getXgAndroidApi().isMiuiRom()) {
|
|
|
|
tpush.getXgAndroidApi().setMiPushAppId(appId: "2882303761518639456");
|
|
|
|
tpush.getXgAndroidApi().setMiPushAppKey(appKey: "5231863961456");
|
|
|
|
} else {
|
|
|
|
if (!await XgFlutterPlugin().getXgAndroidApi().isVivoRom()) {
|
|
|
|
XgFlutterPlugin()
|
|
|
|
.getXgAndroidApi()
|
|
|
|
.createNotificationChannelWithSound(
|
|
|
|
channelId: 'high_custom_8',
|
|
|
|
channelName: '新消息通知',
|
|
|
|
enableLights: true,
|
|
|
|
enableSound: true,
|
|
|
|
enableVibration: true,
|
|
|
|
soundFileName: 'tts_voice');
|
|
|
|
if (!await tpush.getXgAndroidApi().isVivoRom()) {
|
|
|
|
tpush.getXgAndroidApi().createNotificationChannelWithSound(
|
|
|
|
channelId: 'high_custom_8',
|
|
|
|
channelName: '新消息通知',
|
|
|
|
enableLights: true,
|
|
|
|
enableSound: true,
|
|
|
|
enableVibration: true,
|
|
|
|
soundFileName: 'tts_voice');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
XgFlutterPlugin().getXgAndroidApi().enableOtherPush();
|
|
|
|
tpush.getXgAndroidApi().enableOtherPush();
|
|
|
|
}
|
|
|
|
|
|
|
|
/// 启动TPNS服务
|
|
|
|
LogUtil.v("register:${xgCount.toString()}");
|
|
|
|
XgFlutterPlugin().startXg("1600012876", "INUIMFK21WGH");
|
|
|
|
tpush.startXg("1600012876", "INUIMFK21WGH");
|
|
|
|
xgCount++;
|
|
|
|
}
|
|
|
|
|
|
|
|
void _addBadge() {
|
|
|
|
XgFlutterPlugin().setBadge(numPush);
|
|
|
|
XgFlutterPlugin().setAppBadge(numPush);
|
|
|
|
tpush.setBadge(numPush);
|
|
|
|
tpush.setAppBadge(numPush);
|
|
|
|
FlutterAppBadger.updateBadgeCount(numPush);
|
|
|
|
}
|
|
|
|
|
|
|
|
void _clearBadge(VoidCallback callback) async {
|
|
|
|
numPush = 0;
|
|
|
|
XgFlutterPlugin().setBadge(0);
|
|
|
|
XgFlutterPlugin().setAppBadge(0);
|
|
|
|
tpush.setBadge(0);
|
|
|
|
tpush.setAppBadge(0);
|
|
|
|
FlutterAppBadger.removeBadge();
|
|
|
|
callback();
|
|
|
|
}
|
|
...
|
...
|
@@ -1871,7 +1883,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { |
|
|
|
super.dispose();
|
|
|
|
LogUtil.v("home_dispose");
|
|
|
|
|
|
|
|
bus.off('refresh_token');
|
|
|
|
// bus.off('refresh_token');
|
|
|
|
if (timer != null) {
|
|
|
|
timer.cancel();
|
|
|
|
}
|
...
|
...
|
|