fix: harden OriginOS recognition tracking
This commit is contained in:
@@ -197,8 +197,16 @@ class _MiaoJiAppState extends State<MiaoJiApp> with WidgetsBindingObserver {
|
||||
|
||||
Future<void> _restoreRecognitionServices() async {
|
||||
await RecognitionImportService.configureNativeContext();
|
||||
await ScreenshotChannel.waitForAccessibilityConnection();
|
||||
await ScreenshotChannel.ensureRecognitionKeepAlive();
|
||||
await RecognitionImportService.importAutomatic();
|
||||
unawaited(_runSafely(_importAfterAccessibilityReconnect));
|
||||
}
|
||||
|
||||
Future<void> _importAfterAccessibilityReconnect() async {
|
||||
final status = await ScreenshotChannel.waitForAccessibilityConnection();
|
||||
if (status.accessibilityConnected) {
|
||||
await RecognitionImportService.importAutomatic();
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> _refreshRemoteState() async {
|
||||
@@ -231,6 +239,10 @@ class _MiaoJiAppState extends State<MiaoJiApp> with WidgetsBindingObserver {
|
||||
await Future<void>.delayed(const Duration(milliseconds: 180));
|
||||
final context = _rootNavigatorKey.currentContext;
|
||||
if (!mounted || context == null || !context.mounted) return;
|
||||
if (action['action'] == 'open_recognition_settings') {
|
||||
router.push('/screenshot-settings');
|
||||
return;
|
||||
}
|
||||
await RecognitionImportService.handleAction(context, action);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user