Expo 推送通知生成重复令牌

Expo Push Notifications Generating Duplicate Tokens

SDK版本:37 平台(Android/iOS/web/all):全部

每次我 运行 await Notifications.getExpoPushTokenAsync(); 都会生成相同的标记。令牌看起来像:ExponentPushToken[NgTr99YO5fy0EQM4R]。我能够收到此令牌的推送通知,因此我知道它的格式正确,我只是困惑为什么它在应该生成新令牌时一直向我推送相同的令牌。我错过了什么?

const registerForPushNotificationsAsync = async () => {
  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") {
      return;
    }
    token = await Notifications.getExpoPushTokenAsync();
  } else {
    alert("Must use physical device for Push Notifications");
  }

  if (Platform.OS === "android") {
    Notifications.createChannelAndroidAsync("default", {
      name: "default",
      sound: true,
      priority: "max",
      vibrate: [0, 250, 250, 250],
    });
  }
  return token;
};

遵循此文档: https://docs.expo.io/guides/push-notifications/

我的错误。重复的令牌是根据我用来创建新令牌的设备创建的。在我的例子中,我在同一台设备上制作了多个配置文件,所以我收到了每个配置文件的相同令牌,这让我失望了。

一切正常。