| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- import 'package:flutter/services.dart';
- import 'package:flutter/widgets.dart';
- import 'package:keyboard/utils/atmob_log.dart';
- import 'keyboard_android_service.dart';
- import 'keyboard_method_handler.dart';
- class KeyboardAndroidPlatform {
- KeyboardAndroidPlatform._();
- static const MethodChannel _channel = MethodChannel('keyboard_android');
- static const String _tag = 'KeyboardAndroidPlatform';
- static final KeyboardAndroidService _keyboardAndroidService =
- KeyboardAndroidService();
- static final KeyboardMethodHandler _methodHandler = KeyboardMethodHandler();
- static void init() {
- AtmobLog.d(_tag, '初始化 KeyboardAndroidPlatform ');
- _channel.setMethodCallHandler(_methodHandler.handleMethodCall);
- }
- static Future<void> sendDynamicTextRequest(
- String method,
- String currentContent,
- ) async {
- AtmobLog.d(_tag, 'sendDynamicTextRequest: $method');
- switch (method) {
- case 'MethodA':
- AtmobLog.d(_tag, '处理 MethodA');
- break;
- default:
- AtmobLog.d(_tag, '默认处理');
- }
- }
- /// 打开/关闭悬浮窗
- static void enableFloatingWindow(bool enable) {
- debugPrint('enableFloatingWindow $enable');
- _keyboardAndroidService.enableFloatingWindow(enable);
- }
- /// 跳转到系统的悬浮窗设置页
- static void jumpFloatingWindowSetting() {
- debugPrint('jumpFloatingWindowSetting');
- _keyboardAndroidService.jumpFloatingWindowSetting();
- }
- /// 是否有悬浮窗权限
- static Future<bool> hasFloatingWindowPermission() {
- debugPrint('hasFloatingWindowPermission');
- return _keyboardAndroidService.hasFloatingWindowPermission();
- }
- /// 打开输入法设置
- static void openInputMethodSettings() {
- debugPrint('openInputMethodSettings');
- _keyboardAndroidService.openInputMethodSettings();
- }
- /// 是否启用目标输入法
- static Future<bool> isTargetKeyboardEnabled() async {
- final result = await _keyboardAndroidService.isTargetKeyboardEnabled();
- debugPrint('isTargetKeyboardEnabled value: $result');
- return result;
- }
- }
|