app-starlock/star_lock/lib/mine/mall/lockMall_state.dart

24 lines
849 B
Dart

import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:star_lock/webview/webview_logic.dart';
import 'package:webview_flutter/webview_flutter.dart';
class LockMallState {
var lockMallUrl = "".obs;
var webProgress = 0.0.obs;
late WebViewController mallWebView = WebViewController()
..setJavaScriptMode(JavaScriptMode.unrestricted)
..setBackgroundColor(Colors.white)
..setUserAgent(WebViewLogic.userAgent)
..setNavigationDelegate(NavigationDelegate(onNavigationRequest: onNavigationRequest));
//路由跳转逻辑
Future<NavigationDecision> onNavigationRequest(NavigationRequest request) async {
if (WebViewLogic.judgePaySchemes(request.url)) {
await WebViewLogic.runScheme(request.url);
return NavigationDecision.prevent;
}
return NavigationDecision.navigate;
}
}