Fetching expo push token in expo client on android physical device

Hello, I used the following code to fetch the user’s expo push token to send push notification on android device on expo client, however I ended up with this error: TypeError: Cannot read property ‘getDevicePushTokenAsync’ of undefined

Below is the code I used:

registerForPushNotificationsAsync = async () => {

        let token;

        if (Constants.isDevice) {

            const { status: existingStatus } = await Permissions.getAsync(Permissions.NOTIFICATIONS);

            let finalStatus = existingStatus;

            if (existingStatus !== 'granted') {
                const { status } = await Permissions.askAsync(Permissions.NOTIFICATIONS);
                finalStatus = status;
            }

            if (finalStatus !== 'granted') {
                console.log('Failed to get push token for push notification!');
                return;
            }

            token = (await Notifications.getExpoPushTokenAsync()).data;

            console.log(token);

        } else {
            console.log('Must use physical device for Push Notifications');
        }

        // if (Platform.OS === 'android') {
        //     Notifications.setNotificationChannelAsync('default', {
        //         name: 'default',
        //         importance: Notifications.AndroidImportance.MAX,
        //         vibrationPattern: [0, 250, 250, 250],
        //         lightColor: '#FF231F7C',
        //     });
        // }

        return token;
    };

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.