我正在开发一个应用程序,它通过Firebase消息传递获取数据,将其插入SQLite并在应用程序中显示信息(如果它是可见的)
<!-- [START firebase_service] -->
<service
android:name=".MyHandler">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
public class MyHandler extends FirebaseMessagingService {
SQLActivity dbsrv = new SQLActivity(this);
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
dbsrv.crtMSG("SQ32 ETA 11:25");
sendNotification("Flight update");
if (MainActivity.isVisible) {
MainActivity.mainActivity.SnackNotify("Flight update");
}
这是我的SQLIte帮助器类中的相关调用
public class SQLActivity extends SQLiteOpenHelper{
public void crtMSG(String sMSG) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(MSGWRXF.MSGH.MSG, sMSG);
db.insert("MSGH", null, values);
db.close();
}
偶尔我会得到这个错误,通常是在同时收到多个消息时:
“Exception java.lang.IllegalStateException:无法执行此操作,因为连接池已关闭。”
我不明白为什么要将数据保存到SQLite
,因为Firebase具有脱机功能。当没有网络时,数据可以自行缓存。也是最简单的。
Firebase离线能力
我已经从Firebase中导入的Google项目中删除了名为Server key(由Google Service自动创建)的api密钥。 现在,项目设置中的字段服务器密钥-云消息传递为空。我也不能发送通知,我从服务器上得到一个未经授权的401错误。 我能做什么?
新服务器密钥是否仅限于消息传递? 说明:在firebase项目设置中,我可以获得“旧”和新服务器密钥(云消息选项卡)。旧版本无法通过发送推送通知https://fcm.googleapis.com/fcm/send 因为响应说它是一个遗留服务器密钥。但在这里,它可以被限制在某些谷歌API中https://console.developers.google.com/apis. 谷歌API控制台中没有
我目前正在开发一个Android应用程序,我想包括Firebase云消息传递。我计划让树莓派每5分钟左右检查一个网站,并在发生变化时发送推送通知。在官方留档中,他们说我需要一个应用服务器才能通过Firebase发送消息。 这是否意味着我需要让我的Raspi全天候作为服务器运行,并且需要一个静态的IP/域?还是让我的Raspi通过Api(https://fcm.googleapis.com/fcm/
我有一个运行网站的服务器。我需要此服务器能够管理(仅下游)通知到三个独立的设备组,Android,iOS和客户端Web应用程序。 我试图使用Firebase云消息传递。对于FCM,我计划使用超文本传输协议来发送json消息。 除此之外,我还很困惑该去哪里。我知道GCM教程应该与FCM教程完全相同,但我很难找到一个教程来确定我需要做什么,因为每个教程似乎都将服务器端和客户端应用程序混合在一起,这让我
我听说亚马逊使用HTTP作为其基于微服务的架构。另一种方法是使用RabbitMQ或Solace Systems这样的消息传递系统。我个人对基于Solace的微服务架构有经验,但从未使用过REST。 知道像Amazon、Netflix、UK Gov等各种大联盟实现使用什么吗? 其他方面是,在微服务中,还需要以下东西(除了其他东西): *模式匹配 *异步消息传递。接收系统可能已关闭 *发布订阅 *缓存
我们正在使用城市飞艇向我们的Android应用程序发送推送消息。 在此过程中,我们需要使用Firebase控制台中提供的“服务器密钥”配置飞艇- 根据那里的建议,我们正在尝试从GCM迁移到FCM。 问题是“Firebase Cloud Messaging API(V1)”配置中缺少“服务器密钥”。它在“云消息传递API(遗留)”配置中仍然可用,但建议进行迁移。 遵循FCM配置中的链接对这个问题没有