我只是按照以下文档开始构建我的Android应用:https://www.firebase.com/docs/reading-data.html
设置库和权限后,我开始输入极少数代码行。我立刻得到了一个编译错误列表,如下所示:
然后我尝试输入“dataRef”。和Ctr + Space,没有默认提案,但有一条红色消息说“dataRef无法解析为某种类型”。 dataRef是对firebase数据库的引用(就像docs的代码片段中那样)
那是怎么回事?
Ps:我也尝试过清理这个项目。 我相信我的Firebase库是最新的,因为它的名字是“firebase-client-jvm-LATEST”,我今天刚下载它。 我不添加任何xml或构建任何东西。 下面是我的MainActivity.java:
package com.biz.nah;
import com.firebase.client.DataSnapshot;
import com.firebase.client.Firebase;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Create a reference to database
String url = "https://nah.firebaseio.com";
Firebase dataRef = new Firebase(url);
dataRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
// Do some stuff once
}
@Override
public void onCancelled() {
System.err.println("Listener was cancelled");
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
答案 0 :(得分:1)
代码看起来是正确的,尽管你的eclipse窗口的截图证明不是这样。
错误听起来像eclipse并没有正确解析你的代码。
另一个线索是大纲视图url
和dataref
显示为MainActivity
的字段而不是函数变量,就像您在代码中发布的一样。
尝试: