我正在制作一个VoIP应用程序。即使应用程序在后台,我如何确保来电通知?GoogleFCM仅在应用程序处于前台时工作(可能是由于android电池优化)。Whatsapp和Telegram做了什么来确保近100%的来电通知?
当
应用程序处于后台时,不会调用消息接收方法。
public class MyFirebaseMessagingService extends FirebaseMessagingService {
private static final String TAG = "FCM Service";
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
Log.d(TAG, "From: " + remoteMessage.getFrom());
Log.d(TAG, "Notification Message Body: " + remoteMessage.getData().toString());
}
}
PS 在浏览Telegram的代码库时,我发现他们总是在前台运行他们的应用程序
<代码>
这就是他们解决通知的方式,还是不仅仅是表面上看起来的那样?
转到您的后端开发人员,告诉他不要在 firebase 通知中使用通知对象。仅发送带有 to 参数的数据对象。
不要从服务器通知对象发送。因为如果在< code>json中使用< code>notification对象,当你的应用在后台时,你的应用不会显示推送通知。
对于e. g.
{
"to": "e1w6hEbZn-8:APA91bEUIb2JewYCIiApsMu5JfI5Ak...",
"notification": {
"body": "Cool offers. Get them before expiring!",
"title": "Flat 80% discount",
"icon": "appicon"
}
}
您的后端开发人员必须像这样发送 json:
{
"data": {
"score": "5x1",
"time": "15:10"
},
"to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..."
}
如果您使用< code >仅数据消息,在这两种情况下都会调用onMessageReceived()方法,即使您的应用程序处于< code >前台或< code >后台。然后,只需使用< code >键值获得响应。
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
...
Map<String, String> data = remoteMessage.getData();
//you can get your text message here.
String text= data.get("text");
...
}
如何使用注册为频道管理员的机器人访问电报频道消息? 我试图从电报频道获取所有信息,并在ASP.NET网页上显示出来(c#) 当新消息直接发送到机器人时,我能够获得更新: 但它不适用于该频道。
问题内容: 我使用以下代码从我的应用程序发送普通的whatsapp文本消息: 如何从我的应用程序执行whatsapp视频通话? 问题答案: 假设您已经获取了联系电话。 步骤1: 您需要从联系人中获取相应的whatsapp联系人ID。 步骤2: 您使用whatsapp视频意图拨打电话。 注意: 显然,查询代码应该在后台线程上。以上只是如何触发whatsapp视频通话的工作总结。 哦,别忘了添加阅读联
在我们的小型初创公司中,我们使用GitLab进行开发,使用Telegram进行开发人员和PO之间的内部沟通。由于PO希望立即看到进度,因此我们设置了GitLab Pipeline,以便在每次提交后将预览版部署在Web服务器上。现在我们想扩展管道。这样在部署后通过Telegram组发送通知。 所以问题是,这可能吗?如果可能,怎么可能? 编辑:因为我已经实现了,这不是一个真正的问题。我想把答案贴在这里
问题内容: 我面临一种奇怪的情况,即我编写的批处理文件报告了错误的退出状态。这是重现该问题的最小示例: 如果我运行此脚本(使用Python,但是当以其他方式启动时实际上也会出现问题),这是我得到的: 注意如何报告,即使应该如此。 现在很奇怪的是,如果我删除了inner子句(这没关系,因为之后的所有内容都不应该执行),然后尝试启动它: 我再次启动它: 现在正确地报告为。 我不知道是什么原因造成的
我拥有的现有代码: 我想丰富现有代码,并在收到一些不允许的数据时引发异常,我做了以下更改: 但由于以下原因,我的实现甚至不可编译: 您能为我的特定场景提供建议吗?
我已经设置了一个电报网络钩子使用node.js/express: 当我获取时,我可以收到我的机器人控制台: 现在我想从机器人程序接收数据,这样当用户访问时https://telegram.me/mybot?start=xyz并按bot,bot应该在的帖子中收到 以下是我收到邮件的路线: 但当用户访问时,我发现机器人中什么也没有发生https://telegram.me/mybot?start=xy