问题标签 [instanceid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
496 浏览

android - 在后台更新设备令牌时未收到通知

我使用https://developers.google.com的指南在我的项目中实施了 GCM 。

我采取的步骤是:

  1. 对于接收设备令牌:

    ->GCMRegistrationIntentService扩展的类,IntentService它从我的 mainActivity 开始。

    -> 在这项服务中,我使用过:

    我已成功收到令牌。

  2. LocalBroadcastListener 在我的主要活动中获取在步骤 1 中生成的令牌并将其存储在共享首选项中(也将其发送到我的消息服务器)。

  3. 在旧令牌过期的情况下GCMTokenRefreshListenerService扩展以获取令牌的类。InstanceIDListenerService

    -> 在这我打了一个GCMRegistrationIntentService电话onTokenRefresh()

现在我的问题是:

  1. 在哪种情况下调用 GCMTokenRefreshListenerService?
  2. 什么是实例 ID?instanceID 的生命周期是什么?
  3. 我使用以下命令从终端运行服务:

    每次都给了我新的令牌。如何将这个新生成的令牌保存在我的共享首选项中?

  4. 当我从该服务收到新令牌时,我没有收到通知,因为我的令牌已更改。我必须打开我的应用程序才能更新令牌。如何更新此令牌?

  5. 每次打开我的应用程序以获取令牌时,我是否必须调用 GCM?
0 投票
0 回答
808 浏览

android - 等效于 iOS 和 Windows 上的 InstanceID 和 ANDROID_ID

我正在开发一个使用 InstanceID 令牌和 ANDROID_ID 的 Android 应用程序。

我想知道在 iOS 和 Windows 环境中是否有类似的功能?

如果是,我可以使用它们(以及它们在 iOS 和 Windows 上的对应物)来唯一标识应用程序安装。

否则,我将不得不使用所有平台上可用的其他东西,如 UUID。

0 投票
0 回答
395 浏览

cordova - 为 Ionic/Cordova 实现应用实例 ID

我一直在使用 Cordova 设备插件来访问 UUID。对于 iOS,这是每个实例而不是每个设备唯一的。唉,Android 并非如此。我想用它来恢复丢失的连接,但不希望它在安装之间持续存在。

如何唯一标识 Ionic 应用程序的实例,使其通过更新保持不变但在卸载时重置?问题出现是因为 iOS 偶尔会擦除 $localStorage。在文件/存储损坏或其他一些本地灾难的情况下,我希望能够识别传入的请求并至少确认用户数据仍然存在。

0 投票
3 回答
12102 浏览

ios - iOS Swift Firebase InstanceID 令牌首次返回 Nil

我在我的应用中使用 Firebase 通知。当我第一次安装我的应用程序时FIRInstanceID.instanceID().token()返回 nil,但下次它不会返回 nil。除了这个,一切都做得很完美。

这是代码:

在远程页面中,我正在调用 Firebase InstanceID 令牌

但第一次它返回 nil 值。

0 投票
1 回答
87 浏览

api - ODK API:如何根据提交日期过滤 instanceID

我正在通过 API 将数据从 ODK 传输到另一个应用程序。

为此,我正在获取 ODK 表单的实例,然后获取每个实例的详细信息。

我想要的是根据提交日期过滤表单 Instances(InstanceID),这样我就不必遍历所有表单。

请帮忙。

0 投票
1 回答
7409 浏览

android - 使用实例 ID 作为我的 Android 应用程序的唯一 ID

我想为我的应用创建一个唯一 ID。如以下链接所示

我想使用 InstanceID 作为唯一 ID。

由于某些配置设置,我的服务器希望唯一 ID 仅使用小写字母。作为实例 id 给出了小写和大写字符。我正在考虑将每个实例 ID 字符转换为其相应的 ASCII 值,并将其作为我的唯一 ID 发送。这会是正确的方法吗?

另外,我正在阅读有关 FirebaseInstaceId

https://firebase.google.com/docs/reference/android/com/google/firebase/iid/FirebaseInstanceId

是否建议使用 FirebaseInstanceId 而不是 Instance Id?我没有在任何地方的文档中找到它。请建议。

谢谢。

0 投票
0 回答
310 浏览

android - iOS 应用无法连接到 Firebase IID 服务 - 位置绑定?

我正在开发一个应用程序,Android 版本为实例 ID、云消息传递和分析实现了 Firebase。在获取实例 ID 和 FCM 令牌方面一切正常。

我还构建了一个服务器 API,用于向 Android 设备发送通知和数据负载,为了在 iOS 版本中使用相同的方法,我决定将 Firebase for iOS 用于相同的目的(实例 ID、云消息传递和分析)。

在 iOS 上设置 Firebase 有据可查,我能够为一切正常工作设置环境。但是,当我运行该应用程序时,我在控制台中收到以下错误(这意味着未检索到实例 ID 和 FCM 令牌):

等等,我知道还有其他人在这里抱怨同样的问题,但这是完全不同的情况。

我认为我的设置不正确或遗漏了什么,但我查看了所有程序和代码,一切都是 100% 正确的。

我所在的地方(叙利亚大马士革),一些服务被谷歌屏蔽,只能通过代理或 VPN 访问。因此,我为我用于测试的设备和模拟器设置了一个美国代理,当我运行应用程序时,一切正常,我能够获取实例 ID 和 FCM 令牌并将它们记录在控制台中。

奇怪的是,在 Firebase 控制台中,即使未收到 FCM 令牌,分析也会显示正确的用户数量,这意味着与 Firebase 服务的通信并未完全被阻止。唯一不工作的部分(没有代理)是获取 FCM 令牌。

我的问题是:为什么这个特定的 Firebase 服务在 iOS 而不是 Android 中被阻止,我能做些什么吗?请记住,我从同一位置获取 Android 中的令牌没有问题。或者这是 Firebase 中的错误并且服务不受位置限制?

我可以从我的位置连接到 Google API 以用于其他目的,例如 Google 地图或获取有关 FCM 令牌的信息……等等。但是,我注意到控制台指的是iid.firebase.com而不是iid.googleapis.com

在这方面的任何帮助或建议将不胜感激,因为我想决定是否应该继续尝试在两个平台上使用 Firebase,或者我是否应该依赖 Firebase for Android 和原生 APNs 方式 for iOS。另外,我想知道我实施 Firebase 的决定一开始是不是正确的。

谢谢!

0 投票
2 回答
1212 浏览

android - 首次打开应用时创建 Firebase 实例 ID

所以我很难弄清楚 InstanceID 是什么时候创建的,为什么它在第一次打开时不起作用。

当我第一次运行该应用程序时,此代码返回 null。

我什至尝试了一个while循环,只是等到它返回一些东西但没有运气。

但是当我关闭应用程序并再次打开它时,我会得到 InstanceID。任何线索为什么?我正在尝试在应用程序的启动屏幕上获取它。

在重新启动之前不会调用 onTokenRefresh。我可以看到一些变通方法......但更愿意立即完成它。

谢谢!

0 投票
1 回答
53 浏览

firebase - Firebase 实例令牌是否与 Google InstanceID API 兼容?

有一个Google 实例 ID API。它可以与 Firebase 实例 ID 令牌一起使用吗?他们是一回事吗?两个文档站点都没有提及 Firebase 实例 ID 是否与“实例 ID API”兼容。

0 投票
0 回答
339 浏览

firebase - Firebase InstanceID:应用程序卸载/重新安装后是否仍然存在?

如果卸载应用程序并在几周后重新安装,Firebase InstanceID 是保持不变还是会生成一个新的?