Da das Gerät nicht registriert ist, würde ich ein Berechtigungsproblem vermuten.
Wenn Sie auf Android sind, sollten Push-Benachrichtigungen bei der Installation aktiviert werden. Wurden sie aktiviert?
Wenn Sie IOS verwenden, müssen Sie den Benutzer nach Berechtigungen für die Verwendung von Push-Benachrichtigungen fragen. Hast du die Berechtigungen korrekt eingegeben?
Sie können Berechtigungen mit expo importieren
import { Permissions } from 'expo';
Mit den Expo-Berechtigungen können Sie überprüfen, ob die Genehmigung erteilt wurde, und wenn er den Benutzer für die Berechtigung nicht fragen hat.
const { status: existingStatus } = await Permissions.getAsync(
Permissions.NOTIFICATIONS
);
let finalStatus = existingStatus;
// only ask if permissions have not already been determined, because
// iOS won't necessarily prompt the user a second time.
if (existingStatus !== 'granted') {
// Android remote notification permissions are granted during the app
// install, so this will only ask on iOS
const { status } = await Permissions.askAsync(Permissions.NOTIFICATIONS);
finalStatus = status;
}
Dies wurde aus der Expo-Dokumentation übernommen. https://docs.expo.io/versions/latest/guides/push-notifications.html
Denken Sie daran, dass Sie keine Push-Benachrichtigungen an die Standardsimulatoren senden können. Wie die Expo unten sagt,
Note: iOS and Android simulators cannot receive push notifications, to test them out you will need to use a real-life device. Additionally, when calling Permissions.askAsync on the simulator, it will resolve immediately with “undetermined” as the status, regardless of whether you choose to allow or not.