我正在学习 Flutter Hooks,但是当你需要一个通常在 initState 中的特定权限请求时,我找不到任何关于使用什么的信息,例如:
class _HomePageState extends State<HomePage> {
@override
void initState() {
super.initState();
_requestPermissions();
_configureDidReceiveLocalNotificationSubject();
_configureSelectNotificationSubject();
}
void _requestPermissions() {
flutterLocalNotificationsPlugin
.resolvePlatformSpecificImplementation<
IOSFlutterLocalNotificationsPlugin>()
?.requestPermissions(
alert: true,
badge: true,
sound: true,
);
flutterLocalNotificationsPlugin
.resolvePlatformSpecificImplementation<
MacOSFlutterLocalNotificationsPlugin>()
?.requestPermissions(
alert: true,
badge: true,
sound: true,
);
}...
现在迁移它以使用钩子 initState 和 dispose 不是“需要”的,因为它可以为您处理它,这在许多情况下都很好,但我无法将头放在何处放置此类请求权限,例如?
如何在使用 class HomePage extends HookWidget
时请求这些权限?
答案 0 :(得分:0)
解决此问题的最简单方法是使用 StatefulHookWidget
而不是 HookWidget
。 StatefulHookWidget
的行为与 StatefulWidget
一样,但您可以在构建方法中使用钩子。