【发布时间】:2013-07-08 11:20:19
【问题描述】:
所以我已经尝试了 3 次,但未能成功创建一个与 Firebase 通信的 Android 应用程序。就像the tutorial 所做的那样简单,我不禁认为我或它(很可能是前者)缺少了一些东西。
我正在制作的示例应用程序仅包含一个 TextView,应在 https://dummy-firebase.firebaseio.com/ 对我的 Firebase 进行任何更改(因为我无法创建公共 Firebase,如果您愿意,可以粘贴你自己的firebase来测试代码)。以下是 Firebase 上的快照:
这是我唯一的 Activity 的 onCreate:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Firebase f = new Firebase("https://dummy-firebase.firebaseio.com");
f.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot arg0) {
TextView textViewSample = (TextView) findViewById(R.id.sampleTextView);
textViewSample.setText(arg0.getValue(String.class));
}
@Override
public void onCancelled() {
// TODO Auto-generated method stub
}
});
}
这是唯一的 XML 文件,activity_main.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView
android:id="@+id/sampleTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
这是清单的图片,因此您可以清楚地看到 INTERNET 权限:
现在,当我从浏览器更改 Firebase 上的数据时,我相信 TextView 中的数据应该会更新。这没有发生,我在之前的 Firebase Android 项目尝试中尝试使用 EditTexts 和 Buttons 放置数据但未成功。
提前感谢您抽出宝贵时间查看此问题。由于 Firebase 的设置似乎很简单(并且适用于 Javascript 版本),我真的很困惑我做错了什么!
谢谢!!
【问题讨论】:
-
顺便说一句,我通过 Eclipse 在物理 2.2 设备(不是模拟器)上运行它,并且设备的互联网连接很好。 (在 Wi-Fi 和 3G 上都进行了测试)。谢谢
-
您能否尝试其中一个示例应用程序,看看它们是否可以在您的设备上运行?这会让我们知道您的项目是否存在问题,或者 Android SDK 是否存在问题(完全有可能,SDK 是新的并且处于测试阶段)。您应该可以直接在您的设备上安装github.com/firebase/AndroidChat/raw/master/AndroidChat.apk 或github.com/firebase/AndroidDrawing/blob/master/… 并对其进行测试。
-
@MichaelLehenbauer:我刚刚在物理 2.3.6 手机(Samsung Galaxy Ace)上尝试了 Firebase 存储库中的 AndroidDrawing 和 AndroidChat 应用程序,但它们不起作用。没有强制关闭,但他们只是不连接。
-
好的,谢谢。听起来像我们这边的一个问题。我们会看看并回复您(可能下周)。请随时发送电子邮件至 support@firebase.com 以获取更新。给您带来的不便深表歉意!
-
试试看 f.setValue("test");有效吗?