我有一个数据缓存。获取某些数据很昂贵,其他数据则相当容易被舍弃。这些数据可以相当大,可能会导致操作系统要求应用程序释放内存。
Android有onTrimMemory()方法,IOS有applicationDidReceiveMemoryWarning()方法。Flutter有相应的方法吗?
我有一个数据缓存。获取某些数据很昂贵,其他数据则相当容易被舍弃。这些数据可以相当大,可能会导致操作系统要求应用程序释放内存。
Android有onTrimMemory()方法,IOS有applicationDidReceiveMemoryWarning()方法。Flutter有相应的方法吗?
WidgetsBindingObserver
并重写didHaveMemoryPressure
,如以下示例所示:class _HomePageState extends BaseState<HomePage> with WidgetsBindingObserver {
@override
void initState() {
super.initState();
WidgetsBinding.instance.addObserver(this);
}
@override
void dispose() {
super.dispose();
WidgetsBinding.instance.removeObserver(this);
}
@override
void didHaveMemoryPressure() {
print('didHaveMemoryPressure');
}
}