diff --git a/src/screens/Tabs/Me/Push.tsx b/src/screens/Tabs/Me/Push.tsx index 727e0998..728229a8 100644 --- a/src/screens/Tabs/Me/Push.tsx +++ b/src/screens/Tabs/Me/Push.tsx @@ -37,6 +37,9 @@ const TabMePush: React.FC = () => { const appsQuery = useAppsQuery() + const [pushEnabled, setPushEnabled] = useState() + const [pushCanAskAgain, setPushCanAskAgain] = useState() + const checkPush = async () => { const permissions = await Notifications.getPermissionsAsync() setPushEnabled(permissions.granted) @@ -47,6 +50,9 @@ const TabMePush: React.FC = () => { useEffect(() => { checkPush() }, []) + useEffect(() => { + checkPush() + }, [pushEnabled]) useEffect(() => { const subscription = AppState.addEventListener('change', checkPush) return () => { @@ -54,9 +60,6 @@ const TabMePush: React.FC = () => { } }, []) - const [pushEnabled, setPushEnabled] = useState() - const [pushCanAskAgain, setPushCanAskAgain] = useState() - const alerts = () => push?.alerts ? PUSH_DEFAULT().map(alert => ( @@ -121,7 +124,7 @@ const TabMePush: React.FC = () => { {!!appsQuery.data?.vapid_key ? ( <> - {!!expoToken?.length ? ( + {!!expoToken?.length || (!expoToken?.length && !pushEnabled) ? ( <> {pushEnabled === false ? (