This commit is contained in:
DESKTOP-I3JPKHK\wy 2025-11-25 18:00:20 +08:00
parent f46f53962f
commit f7d44c9a34
3 changed files with 67 additions and 37 deletions

View File

@ -496,20 +496,28 @@ class MethodChannelAppUpgradePlugin extends AppUpgradePluginPlatform {
} }
debugPrint('当前APP没有上架当前设备对应的应用市场'); debugPrint('当前APP没有上架当前设备对应的应用市场');
if (context.mounted) { if (context.mounted) {
try { // Scaffold widget
final scaffold = Scaffold.maybeOf(context);
if (scaffold == null) {
debugPrint('提示无Scaffold: 当前APP没有上架当前设备对应的应用市场');
} else {
// 使 maybeOf ScaffoldMessenger
final scaffoldMessenger = ScaffoldMessenger.maybeOf(context); final scaffoldMessenger = ScaffoldMessenger.maybeOf(context);
if (scaffoldMessenger != null) { if (scaffoldMessenger == null) {
scaffoldMessenger.showSnackBar( debugPrint('提示无ScaffoldMessenger: 当前APP没有上架当前设备对应的应用市场');
SnackBar(
content: Text('当前APP没有上架当前设备对应的应用市场'),
duration: Duration(seconds: 2),
),
);
} else { } else {
debugPrint('提示无Scaffold: 当前APP没有上架当前设备对应的应用市场'); // 使 try-catch
try {
scaffoldMessenger.showSnackBar(
SnackBar(
content: Text('当前APP没有上架当前设备对应的应用市场'),
duration: Duration(seconds: 2),
),
);
} catch (e) {
debugPrint('显示提示失败: $e');
}
} }
} catch (e) {
debugPrint('显示提示失败: $e');
} }
} }
// Fluttertoast.showToast(msg: '当前APP没有上架当前设备对应的应用市场'); // Fluttertoast.showToast(msg: '当前APP没有上架当前设备对应的应用市场');

View File

@ -524,30 +524,44 @@ class AppUpgradeSimple {
if (effectiveConfig.customToast != null) { if (effectiveConfig.customToast != null) {
effectiveConfig.customToast!(message); effectiveConfig.customToast!(message);
} else { } else {
// context Scaffold // context
if (!context.mounted) { if (!context.mounted) {
debugPrint('Toast消息context已卸载: $message'); debugPrint('Toast消息context已卸载: $message');
return; return;
} }
// Scaffold widget
final scaffold = Scaffold.maybeOf(context);
if (scaffold == null) {
// Scaffold使 debugPrint
debugPrint('Toast消息无Scaffold: $message');
return;
}
// 使 maybeOf ScaffoldMessenger
final scaffoldMessenger = ScaffoldMessenger.maybeOf(context);
if (scaffoldMessenger == null) {
// ScaffoldMessenger使 debugPrint
debugPrint('Toast消息无ScaffoldMessenger: $message');
return;
}
// 使 Scaffold ScaffoldMessenger
// 使 try-catch
try { try {
// ScaffoldMessenger使 debugPrint scaffoldMessenger.showSnackBar(
final scaffoldMessenger = ScaffoldMessenger.maybeOf(context); SnackBar(
if (scaffoldMessenger != null) { content: Text(message),
scaffoldMessenger.showSnackBar( duration: Duration(seconds: 2),
SnackBar( ),
content: Text(message), );
duration: Duration(seconds: 2),
),
);
} else {
// Scaffold使 debugPrint
debugPrint('Toast消息无Scaffold: $message');
}
} catch (e) { } catch (e) {
// 使 debugPrint //
debugPrint('显示Toast失败: $e'); //
debugPrint('Toast消息: $message'); debugPrint('显示Toast失败已使用后备方案: $message');
if (effectiveConfig.enableDebugLog) {
debugPrint('错误详情: $e');
}
} }
} }
} }

View File

@ -267,18 +267,26 @@ class PermissionHelper {
message = '未授予安装权限,无法完成更新。'; message = '未授予安装权限,无法完成更新。';
break; break;
} }
try { // Scaffold widget
final scaffold = Scaffold.maybeOf(context);
if (scaffold == null) {
debugPrint('权限提示无Scaffold: $message');
} else {
// 使 maybeOf ScaffoldMessenger
final scaffoldMessenger = ScaffoldMessenger.maybeOf(context); final scaffoldMessenger = ScaffoldMessenger.maybeOf(context);
if (scaffoldMessenger != null) { if (scaffoldMessenger == null) {
scaffoldMessenger.showSnackBar( debugPrint('权限提示无ScaffoldMessenger: $message');
SnackBar(content: Text(message)),
);
} else { } else {
debugPrint('权限提示无Scaffold: $message'); // 使 try-catch
try {
scaffoldMessenger.showSnackBar(
SnackBar(content: Text(message)),
);
} catch (e) {
debugPrint('显示权限提示失败: $e');
debugPrint('权限提示: $message');
}
} }
} catch (e) {
debugPrint('显示权限提示失败: $e');
debugPrint('权限提示: $message');
} }
} }