Firebase 监听器不工作
Posted
技术标签:
【中文标题】Firebase 监听器不工作【英文标题】:Firebase listener not working 【发布时间】:2013-07-12 13:14:40 【问题描述】:我正在测试适用于 android 的新 Firebase 库,不幸的是它无法正常工作,这是我放在 onCreate MainActivity.method 上的代码:
Firebase ref = new Firebase("https://mydatabase.firebaseio.com/");
// Read data and react to changes
ref.addValueEventListener(new ValueEventListener()
@Override
public void onDataChange(DataSnapshot snap)
Log.e("FIREBASE", snap.getName() + " -> " + snap.getValue());
@Override public void onCancelled()
);
输出:没有消息显示和调试错误:
07-15 00:01:49.020: D/ActionBarSherlock(13362): [callbackPrepareOptionsMenu] returning true
07-15 00:01:49.020: D/ActionBarSherlock(13362): [dispatchPrepareOptionsMenu] returning true
07-15 00:01:49.370: D/dalvikvm(13362): GC_CONCURRENT freed 263K, 4% free 9700K/10055K, paused 20ms+4ms
07-15 00:01:49.830: D/WebSocket(13362): ws_0 - closed with code -1 and reason:
07-15 00:01:49.830: D/WebSocket(13362): ws_0 - closing itself
07-15 00:01:49.830: D/Connection(13362): conn_0 - Realtime connection failed
07-15 00:01:49.830: D/Connection(13362): conn_0 - closing realtime connection
07-15 00:01:49.830: D/PersistentConnection(13362): pc_0 - Got on disconnect
07-15 00:01:49.830: D/PersistentConnection(13362): pc_0 - Reconnecting in 0ms
07-15 00:01:49.830: D/ViewManager(13362): Raising events for /.info/connected
07-15 00:01:49.830: D/ViewManager(13362): Marking queries complete for /.info/connected
07-15 00:01:49.830: D/ViewManager(13362): Marking queryMap complete:null
07-15 00:01:49.840: D/Connection(13362): conn_1 - Opening a connection
07-15 00:01:50.670: D/WebSocket(13362): ws_1 - closed with code -1 and reason:
07-15 00:01:50.670: D/WebSocket(13362): ws_1 - closing itself
07-15 00:01:50.670: D/Connection(13362): conn_1 - Realtime connection failed
07-15 00:01:50.670: D/Connection(13362): conn_1 - closing realtime connection
07-15 00:01:50.670: D/PersistentConnection(13362): pc_0 - Got on disconnect
07-15 00:01:50.670: D/PersistentConnection(13362): pc_0 - Reconnecting in 342ms
07-15 00:01:50.670: D/ViewManager(13362): Raising events for /.info/connected
07-15 00:01:50.670: D/ViewManager(13362): Marking queries complete for /.info/connected
07-15 00:01:50.670: D/ViewManager(13362): Marking queryMap complete:null
PS : 我把 INTERNET 权限放在 AndroidManifest 文件上。
PS 2:我下载了聊天示例,但它也不起作用。
【问题讨论】:
您运行的是哪个版本的 Android?另外,您可以将以下内容添加到主要活动的顶部并发布日志输出吗?静态 Firebase.getDefaultConfig().setLogLevel(Logger.Level.DEBUG); 我测试了setloglevel,但它没有显示...我的android版本:4.0.4 span> 如果您在主要活动的顶部包含该代码,它应该将日志消息添加到 logcat 输出(“adb -e logcat”)。你没有收到任何消息吗? 你的意思是没有日志输出?你在真正的硬件上运行吗?在这种情况下,您需要“adb -d logcat”来获取日志输出。 似乎是这个问题:code.google.com/p/android/issues/detail?id=12955#c12 这需要我一点时间,但我会努力找到解决方法。 【参考方案1】:这似乎是 Android 2.3 的 SSL 实现的问题。我们正在对围绕它工作的库进行更新。您可以尝试在版本 >= 3.0 的模拟器上运行您的应用吗?
我们刚刚发布了新版本的库 (v1.0.2)。你可以试一试,看看它是否能解决问题?它包括一些 Android SSL 限制的解决方法。
https://www.firebase.com/docs/downloads.html
【讨论】:
有没有java库的公开repo?我可以自己检查以找到解决方案。 客户端库目前还没有开源,虽然我们以后可能会开源。以上是关于Firebase 监听器不工作的主要内容,如果未能解决你的问题,请参考以下文章
如何删除 firebase.notifications().onNotificationOpened 监听器?