Я добавляю веб-поддержку в существующий плагин, и я уже определил класс dart, который отвечает за его реализацию, а также зарегистрировал его на pubspec.yaml
.
Плагин, к которому я ' Добавление веб-поддержки в настоящее время не соответствует федеративному стилю, поэтому я создал еще одну папку "my_plugin_web"
, которая содержит pubspec.yaml
и папку lib
, а внутри нее находится файл dart.
pubspec.yaml
регистрирует класс дротиков следующим образом:
flutter:
plugin:
platforms:
web:
pluginClass: MyPlugin
fileName: myplugin_web.dart
Файл дротиков регистрирует MethodChannel
следующим образом:
class MyPlugin {
static void registerWith(Registrar registrar) {
final MethodChannel channel = MethodChannel(
'test.my_plugin',
const StandardMethodCodec(),
registrar.messenger
);
final MyPlugin instance = new MyPlugin();
channel.setMethodCallHandler(instance.handleMethodCall);
}
Future<dynamic> handleMethodCall(MethodCall call) async {
window.alert('Hello');
return true;
}
}
Если я пытаюсь покажите окно с предупреждением, как указано выше, все работает как положено, но для моего плагина мне нужно иметь возможность показать файл HTML (тогда код dart взаимодействует с библиотеками JavaScript). Файл HTML должен заменить весь экран Flutter, как это сделал бы нативный плагин Android или iOS (а не просто добавить к нему).
Есть идеи, как это сделать?
Спасибо.