Notifications permission "granted" when it's not

Running into weird issues with notification permissions on iOS Bare Workflow

Permissions.askAsync(Permissions.NOTIFICATIONS, Permissions.USER_FACING_NOTIFICATIONS) resolves with status === 'granted', and I’m also getting tokens when calling Notifications.getExpoPushTokenAsync and Notifications.getDevicePushTokenAsync, but the dialog to request notification permissions never actually shows up, and when I try to send a push it’s never shown, but is received silently in the background.

It may have something to do with me also using VoIP, which seems to be working. I’ve made sure to request Push Notifications and Remote Notifications in the project’s capabilities.

Meanwhile, when I install react-native-permissions and use their requestNotifications function I get prompted notification permission. After I give permission, I’m able to send push alerts to my phone. Possible bug with bare workflow apps using VoIP & expo notification permissions?

Also a note for others hitting this question, unrelated to the bugs above, make sure to set a notification handler or else your notifications won’t show in the foreground

  useEffect(() => {
    Notifications.setNotificationHandler({
      handleSuccess: notificationId => console.log("Notif success", notificationId),
      handleError: (notificationId, error) => console.log("Notif error", notificationId, error),
      handleNotification: async notification => {
        console.log("Notif handled", notification);
        return {
          shouldShowAlert: true,
          shouldPlaySound: false,
          shouldSetBadge: false,
        };
      }
    });
  }, []);