我想在Flutter应用上设置 firebase应用内消息传递。
首先,它需要here所述,FirebaseInstanceId
,以便我可以测试将消息发送到我的设备。
但是,该文档并未详细说明如何在Android上(特别是在flutter上)获取它。
有什么主意吗?
注意:有人声称他可以扑朔迷离地使用 inapp-messaging ,请参阅here
先谢谢您...
答案 0 :(得分:3)
可以在iOS上使用-instanceIDWithHandler或在Android上使用getInstanceId来获取Firebase实例ID。
在撰写本文时,我还不知道有一个独立的插件可以执行此操作,这意味着您有两个选择:
如果您使用firebase_messaging路由(请注意,这意味着您要添加另一个依赖项),则可以执行以下操作:
9.0-8/9.0-9 to 9.0-10
然后在代码中的某处:
final FirebaseMessaging _firebaseMessaging = FirebaseMessaging();
更新
调用get令牌时,您会得到以下格式的内容: NNNNNNN:MMMMMMMMMMMMMMMMMMMM 。仅使用冒号( NNNNNNNN )之前的第一部分-这是测试应用内消息传递活动所需的实例ID。
答案 1 :(得分:1)
您可以在终端中运行它。
adb logcat | grep 'InAppMessaging'
<块引用>
02-26 23:47:44.835 28379 28379 I FIAM.Headless:开始 安装 ID 为 dTEmOkEwRzC_xiO8YNPXs0 的 InAppMessaging 运行时
答案 2 :(得分:-1)
要检索FirebaseInstanceId
,您需要实现Firebase应用内消息传递SDK,并确保您的应用连接到Firebase。
一旦应用程序连接到Firebase,它将在应用程序运行后将FirebaseInstanceId
添加到Android日志中。
在您链接的文章中,Google解释说,您可以通过在日志中查找字符串FirebaseInstanceId
来找到I/FIAM.Headless: Starting InAppMessaging runtime with Instance ID <YOUR_APP_ID>
。
如果您使用的是Android Studio,则应该能够使用logcat
窗口浏览设备的日志(在调试App的同时)。 logcat
窗口还将允许您搜索和过滤日志,因此相对容易找到提到的字符串。
简而言之(在Android Studio中):
Logcat
窗口; I/FIAM.Headless: Starting InAppMessaging runtime with Instance ID
;