Android:如何将推送通知集成到现有的应用程序?

Android:如何将推送通知集成到现有的应用程序?,android,push-notification,firebase-cloud-messaging,Android,Push Notification,Firebase Cloud Messaging,如何将推送通知集成到现有的android应用程序 我的android应用程序已经在playstore上可用,现在我想在下一版本中集成推送通知。我使用FCM和AWS SNS实现了它 问题是:只有在新安装应用程序时,才会调用FirebaseMessagingService的onNewToken方法。但当我们更新它时,onneToken方法永远不会得到调用。因此,在更新应用程序时,我们无法在AWS门户上注册令牌。请专家建议如何在现有应用程序中实现此功能 问题是:FirebaseMessagingSer

如何将推送通知集成到现有的android应用程序

我的android应用程序已经在playstore上可用,现在我想在下一版本中集成推送通知。我使用FCM和AWS SNS实现了它

问题是:只有在新安装应用程序时,才会调用FirebaseMessagingService的onNewToken方法。但当我们更新它时,onneToken方法永远不会得到调用。因此,在更新应用程序时,我们无法在AWS门户上注册令牌。请专家建议如何在现有应用程序中实现此功能

问题是:FirebaseMessagingService的onNewToken方法将无法获得 仅当我们新安装应用程序时调用。但是当我们更新它的时候 onNewToken方法从未得到调用。因此,我们无法在上注册令牌 更新应用程序时打开AWS门户。请专家建议如何 在现有应用程序中实现此功能

你可以打电话

FirebaseInstanceId.getInstance().getToken(senderId,“FCM”)

在任何时候,为了获得要推送到服务器的实例id,这是一个阻塞调用,所以请确保在后台线程上执行

// Use this in your splashscreen or dashboard view.    
FirebaseInstanceId.getInstance().instanceId.addOnCompleteListener { task ->
        if (!task.isSuccessful)
            return@addOnCompleteListener

        if(prefs.pushNotificationToken == "") {
            //log the token
            prefs.pushNotificationToken = task.result?.token?.trim() ?: ""
            //send user push notification token to the server(use Patch instead of Post)
        }
}
问题是:FirebaseMessagingService的onNewToken方法将无法获得 仅当我们新安装应用程序时调用。但是当我们更新它的时候 onNewToken方法从未得到调用。因此,我们无法在上注册令牌 更新应用程序时打开AWS门户。请专家建议如何 在现有应用程序中实现此功能

你可以打电话

FirebaseInstanceId.getInstance().getToken(senderId,“FCM”)

在任何时候,为了获得要推送到服务器的实例id,这是一个阻塞调用,所以请确保在后台线程上执行

// Use this in your splashscreen or dashboard view.    
FirebaseInstanceId.getInstance().instanceId.addOnCompleteListener { task ->
        if (!task.isSuccessful)
            return@addOnCompleteListener

        if(prefs.pushNotificationToken == "") {
            //log the token
            prefs.pushNotificationToken = task.result?.token?.trim() ?: ""
            //send user push notification token to the server(use Patch instead of Post)
        }
}
这样,新旧用户的prefs中的“pushNotificationToken”都将为空。因此,我们可以随时从firebase获取令牌并将其发送到后端。或者,我们也可以首先在prefs中检查令牌,然后只向firebase请求令牌


这样,新旧用户的prefs中的“pushNotificationToken”都将为空。因此,我们可以随时从firebase获取令牌并将其发送到后端。或者,我们也可以首先在prefs中检查令牌,然后只向firebase请求令牌。

FirebaseMessagingService将在我们首次安装应用程序时收到呼叫。
您为什么这么认为?当我们第一次安装应用程序时,onNewToken会收到呼叫。如果我们更新应用程序,它将不会被调用。
onNewToken
在应用程序安装时不会被调用,而是在令牌更改时被调用。
FirebaseMessagingService仅在我们第一次安装应用程序时才会被调用。
你为什么这么认为?onNewToken在我们第一次安装应用程序时会被调用。如果我们更新应用程序,它将不会被调用。
onNewToken
在应用程序安装时不会被调用,而是在令牌更改时被调用。