如果插件需要与UI 进行互动,例如请求权限或更改Android UI ,那麽您就需要一些附加步骤来构建您的插件。您必须实现 ActivityAware,Flutter 提供了 ActivityAware 用於 Activity 的生命周期管理和获取
public class MyPlugin implements FlutterPlugin, ActivityAware {
//...normal plugin behavior is hidden...
@Override
public void onAttachedToActivity(ActivityPluginBinding activityPluginBinding) {
// TODO: your plugin is now attached to an Activity
}
@Override
public void onDetachedFromActivityForConfigChanges() {
// TODO: the Activity your plugin was attached to was
// destroyed to change configuration.
// This call will be followed by onReattachedToActivityForConfigChanges().
}
@Override
public void onReattachedToActivityForConfigChanges(ActivityPluginBinding activityPluginBinding) {
// TODO: your plugin is now attached to a new Activity
// after a configuration change.
}
@Override
public void onDetachedFromActivity() {
// TODO: your plugin is no longer associated with an Activity.
// Clean up references.
}
}
onAttachedToEngine
和onDetachedFromEngine
是FlutterPlugin
的介面方法,是flutter新的载入Plugin 的方式,onAttachedToActivity
和onDetachedFromActivity
是ActivityAware
的介面方法,主要是用於获取当前flutter 页面所处的Activity.
我们可以将Plugin 设计将MethodHandler
在 onAttachedToEngine
方法中被初始化和构建,在 onDetachedFromEngine
方法中释放;同时 Activity 相关的四个实现方法也提供了相应的操作逻辑
>>: Day23 URLSession 03 - PUT / PATCH
选择语言与IDE 这边就直接决定使用Visual Studio 作为我们开发的IDE, 并用 **A...
今天继续来看 HMM 的後续! 文件 原文文件:Heterogeneous Memory Manag...
本篇将简单介绍 TCP 与 UDP,藉由介绍两者的差异,来解释为何 TCP 为什麽会比较耗时间,然而...
职场好榜样CL大教我的 3 件事 客户出言不逊,可能有他的理由,比如说:疫情影响损失惨重,心情受影...
activity_main: 全以LinearLayou进行排版 <?xml version=...