标签: firebase-realtime-database

Firebase在类上找不到要序列化的属性

我开始创建一个Firebase数据库.

我正在尝试为一个班级建模.一个非常简单的课程:

package com.glups.model;

import com.google.firebase.database.IgnoreExtraProperties;

@IgnoreExtraProperties
public class AlumnoFB {

    private String nombre;
    private String apellidos;
    private String telefono;
    private String email;
    private Boolean tieneWhatsapp;
    private Boolean tieneTelegram;
    private Boolean tieneHangouts;
    private Long formaPago;
    private Double ratioHora;
    private Double precioHora;
    private Double horasCompensadas;

    public AlumnoFB() {
        // Default constructor required for calls to DataSnapshot.getValue(User.class)
    }

    public AlumnoFB(String nombre,
                    String apellidos,
                    String telefono,
                    String email,
                    Boolean tieneWhatsapp,
                    Boolean tieneTelegram,
                    Boolean tieneHangouts,
                    Long formaPago,
                    Double ratioHora,
                    Double precioHora,
                    Double horasCompensadas) { …
Run Code Online (Sandbox Code Playgroud)

java android firebase firebase-realtime-database

70
推荐指数
3
解决办法
3万
查看次数

更新到新firebase后获取异常java.lang.NoClassDefFoundError:com.google.firebase.FirebaseOptions

我已使用更新我的应用程序到新的firebase ,现在当我编译我的项目时,我得到以下异常.

这是我的logcat:

11:57:54.533 27844-27844/com.example.dayshift_2.traveyy E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.dayshift_2.traveyy, PID: 27844
java.lang.NoClassDefFoundError: com.google.firebase.FirebaseOptions
at com.google.firebase.FirebaseApp.zzbu(Unknown Source)
at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1591)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1562)
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source)
at android.app.ActivityThread.installProvider(ActivityThread.java:4871)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4466)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4406)
at android.app.ActivityThread.access$1500(ActivityThread.java:139)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1270)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5102)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

我的Build.gradle:

apply plugin: 'com.android.application'

android {
compileSdkVersion 23
buildToolsVersion "23.0.3"

defaultConfig {
    applicationId "com.example.dayshift_2.traveyy"
    minSdkVersion 15
    targetSdkVersion 23
    versionCode 1 …
Run Code Online (Sandbox Code Playgroud)

android exception firebase firebase-realtime-database

69
推荐指数
6
解决办法
8万
查看次数

如何从Firebase android获取所有子列表

我希望所有来自Firebase的子列表都在android中.

我已经实现了这个代码,但它不起作用.

mFirebaseRef = new Firebase(FIREBASE_URL);

mFirebaseRef.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        List<String> td = (ArrayList<String>) dataSnapshot.getValue();
        //notifyDataSetChanged();
    }

    @Override
    public void onCancelled(FirebaseError firebaseError) {

    }
});
Run Code Online (Sandbox Code Playgroud)

android firebase groupchat firebase-realtime-database

67
推荐指数
9
解决办法
13万
查看次数

什么是AWS等同于Firebase实时数据库?

我正在开发一个新的游戏项目,包括一个React Native前端和一个基于Lambda的后端.该应用程序需要一些实时功能,如活动用户记录,地理围栏等.

我正在研究Firebase的实时数据库,它看起来像是一个非常优雅的实时数据同步解决方案,但我不认为AWS有任何类似的东西.

我只能使用AWS服务来考虑"无服务器"实时的3个选项是:

选项1:通过WebSockets进行AWS IoT消息传递

这一点非常明显,通过IoT SDK实现了托管WebSockets连接.我正在考虑触发Lambdas以响应入站和出站事件,并且只使用WebSockets作为实时层,就像通常那样在应用客户端上构建自定义处理逻辑.

至少与Firebase相比,这方面的缺点是我将不得不自己处理事件中的数据,这将在WebSockets之上添加另一层管理,并且必须使用应用程序商店中的API数据层进行标准化. .

优点:

  • 可扩展的双向实时连接

缺点:

  • 仅在应用程序打开时有效
  • 需要实现消息结构
  • 要管理的多个传输层

选项2:推送触发重新获取

另一种选择是使用推送通知作为实时触发器,但使用常规HTTP请求到API网关实际获取更新的有效负载.

我喜欢这种方法,因为它只适用于一个传输层和应用程序状态的单一事实来源.当应用程序未打开时,它也会触发更新,因为这些是推送通知.

缺点是这是很多自定义工作,在推送通知与需要获取的数据之间可能存在困难的映射.

优点:

  • 即使应用关闭,推送通知仍然有效
  • 单一的事实来源,传输层

缺点:

  • 最定制的解决方案
  • 将涉及更多的整体HTTP请求

选项3:Cognito Sync 这对我来说比较新,我不确定它是否可以与服务器实际连接.

Cognito Sync提供用户状态同步.跨设备完成离线支持,是我将要使用的Cognito SDK的一部分.这听起来就像我正在寻找但却无法找到任何确凿的证据,因为它可以修改或"触发"来自AWS的更新,而不仅仅是来自其中一个设备.

优点:

  • 提供抽象的实时数据模型
  • 连接到Cognito用户记录OOTB

缺点:

  • 不确定是否可以从Lambdas修改或更新


我想知道是否有人有经验在AWS上实时作为基于Lambda的架构的一部分,如果你对什么是最好的方法有意见?

real-time amazon-web-services aws-lambda firebase-realtime-database aws-iot

67
推荐指数
3
解决办法
4万
查看次数

Firebase更新与设置

正如标题所说,我不能得到之间的区别updateset.此外,文档无法帮助我,因为如果我使用set,更新示例的工作原理完全相同.

update来自文档的示例:

function writeNewPost(uid, username, title, body) {

    var postData = {
        author: username,
        uid: uid,
        body: body,
        title: title,
        starCount: 0
    };

    var newPostKey = firebase.database().ref().child('posts').push().key;

    var updates = {};
    updates['/posts/' + newPostKey] = postData;
    updates['/user-posts/' + uid + '/' + newPostKey] = postData;

    return firebase.database().ref().update(updates);
}
Run Code Online (Sandbox Code Playgroud)

使用相同的例子 set

function writeNewPost(uid, username, title, body) {

    var postData = {
        author: username,
        uid: uid,
        body: body,
        title: title,
        starCount: 0
    };

    var newPostKey = firebase.database().ref().child('posts').push().key; …
Run Code Online (Sandbox Code Playgroud)

javascript firebase firebase-realtime-database

66
推荐指数
1
解决办法
5万
查看次数

如果子项的子项包含值,则为Firebase查询

表的结构是:

  • 聊天记录
  • - > randomId
  • - > - >参与者
  • - > - > - > 0:'name1'
  • - > - > - > 1:'name2'
  • - > - > chatItems

等等

我想要做的是查询聊天表,找到通过传入的用户名字符串保存参与者的所有聊天.

这是我到目前为止:

 subscribeChats(username: string) {
    return this.af.database.list('chats', {
        query: {
            orderByChild: 'participants',
            equalTo: username, // How to check if participants contain username
        }
    });
 }
Run Code Online (Sandbox Code Playgroud)

firebase firebase-realtime-database angularfire2 angular

55
推荐指数
1
解决办法
1万
查看次数

如何将Firebase数据转换为Java对象......?

使用Firebase Library以Message(String, String)添加到的表单中的形式向服务器发送数据HashMap<String, Message>

例:

Firebase fb = new Firebase(URL);
Firebase msgRef = fb.child("finished");
HashMap<String, Message> msgList = new HashMap<>();
Message msg = new Message(m, n);
msgList.put(HASHKEY, msg);
msgRef.push().setValue(msgList);
Run Code Online (Sandbox Code Playgroud)

使用Firebase方法接收数据时,addValueEventListener()在此表单中获取字符串

{ key = finished, value = {
    -Js9Rn0uttjYIGdcv8I1={Moosa={message=email, name=Kamran}},
    -Js9Vsmv6BnVzOzpl2L8={Moosa={message=msgs, name=Imran}}, 
    -Js9WtQ8yeDwVxQMFCZb={Moosa={message=samsung, name=Samad}}, 
    -Js9RarxoJPKn4RO2HaM={Moosa={message=Message, name=Moosa}}, 
    -Js9b6f75lwwbsqQNJz0={Moosa={message=Qmobile, name=Bilal}}, 
    -Js9aDxt8TlgTGUccuxu={Moosa={message=last, name=Moosa}}} }
Run Code Online (Sandbox Code Playgroud)

如何将其转换为消息对象..... ????

java android firebase firebase-realtime-database

54
推荐指数
4
解决办法
7万
查看次数

Firebase脱机功能和addListenerForSingleValueEvent

每当我使用addListenerForSingleValueEventsetPersistenceEnabled(true),我只能设法从服务器获取本地脱机副本DataSnapshot不是更新DataSnapshot.

但是,如果我用addValueEventListenersetPersistenceEnabled(true),我可以得到的最新副本DataSnapshot从服务器.

这是正常的,addListenerForSingleValueEvent因为它只搜索DataSnapshot本地(离线)并在成功检索DataSnapshot ONCE(离线或在线)后删除其侦听器?

android firebase firebase-realtime-database

53
推荐指数
1
解决办法
1万
查看次数

闭包不能隐式捕获变异的自身参数

我正在使用Firebase来观察事件,然后在完成处理程序中设置图像

FirebaseRef.observeSingleEvent(of: .value, with: { (snapshot) in
        if let _ = snapshot.value as? NSNull {
            self.img = UIImage(named:"Some-image")!
        } else {
            self.img = UIImage(named: "some-other-image")!
        }
})
Run Code Online (Sandbox Code Playgroud)

但是我收到了这个错误

闭包不能隐式捕获变异的自身参数

我不确定这个错误是什么,搜索解决方案没有帮助

ios firebase swift firebase-realtime-database swift3

51
推荐指数
3
解决办法
3万
查看次数

有没有办法将GeoFire与Firestore一起使用?

GeoFire与实时数据库紧密耦合,而地理查询是许多希望迁移到Firestore的应用程序的常见功能依赖.有没有办法在Firestore环境中复制散列/检索位置?

firebase geofire firebase-realtime-database google-cloud-firestore

51
推荐指数
4
解决办法
1万
查看次数