什么是firebase以及如何在Android中使用它?

时间:2015-11-15 14:08:05

标签: java android firebase firebase-hosting firebase-realtime-database

我想创建一个Android应用程序,作为作者,我上传我的大学笔记,任何人都可以下载它。我读到firebase可以帮助我解决这个问题。任何人都可以解释一下什么是firebase以及如何在我的参考中使用它?谢谢!

3 个答案:

答案 0 :(得分:21)

更新:自从Google I / O 2016以来,Firebase已经有了一些重大更新。以下是与旧服务相关的信息。

Firebase团队成员。

tl; dr - 阅读此Quickstart,注意this video。使用FirebaseUI

Firebase是移动和网络应用的平台。

Firebase有三项主要服务:

  • 实时数据库
  • 验证
  • 静态主机

设置

要编写Android应用,您需要下载Android SDK。如果您使用的是Android Studio 1.4,则可以转到File > Project Structure > Cloud设置Firebase。然后点击Firebase复选框。

保存和检索数据

每个Firebase应用都有一个名称,用于访问数据库的URL。数据以JSON格式存储在Firebase中。每件作品都有一个映射到其位置的URL。要将数据存储或保存到该位置,请创建Firebase参考。

// Create a reference to the Firebase database
Firebase ref = new Firebase("https:<MY-FIREBASE-APP>.firebaseio.com/data");
// Save Data
ref.setValue("Hello"); 
// Sync data
ref.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot snapshot) {
        System.out.println(snapshot.getValue());
    }
    @Override
    public void onCancelled(FirebaseError firebaseError) {
        System.out.println("The read failed: " + firebaseError.getMessage());
    }
});

FirebaseUI

Firebase SDK擅长保存和检索数据,但它与ListAdapter等Android SDK组件无关。为此,您可以使用the FirebaseUI library

FirebaseUI允许您快速将常用UI元素连接到Firebase数据库以进行数据存储。以下是将FirebaseUI与FirebaseListAdapter一起使用的示例。

mAdapter = new FirebaseListAdapter<ChatMessage>(this, ChatMessage.class, android.R.layout.two_line_list_item, ref) {
    @Override
    protected void populateView(View view, ChatMessage chatMessage) {
        ((TextView)view.findViewById(android.R.id.text1)).setText(chatMessage.getName());
        ((TextView)view.findViewById(android.R.id.text2)).setText(chatMessage.getMessage());

    }
};
messagesView.setListAdapter(mAdapter);

这只是一切的要点。 documentation of Firebase非常全面(,如果我自己,那么人类可读)。

答案 1 :(得分:8)

Firebase是一个NoSQL类型的数据库,它使用套接字,允许客户端实时接收信息 - 而不必向服务器发出GET请求。

这要求您在设置时“将客户端”订阅到数据库/集合。

就如何在应用程序中使用它而言,这取决于您希望在堆栈中使用的技术。 firebase网站上有文档,建议您如何执行此操作。

另外,如果您仅仅基于希望拥有您所描述的功能而提出要求; Meteor框架附带一个基于套接字的NoSQL后端数据库,非常容易实现;这里有一个教程; https://www.meteor.com/tutorials/blaze/creating-an-app

答案 2 :(得分:5)

自从您提出问题并且Firebase添加了新文档以来已经有一段时间了。这就是它所说的,

先决条件

  • Android版本应为2.3或更高版Google Play服务 9.2.1或更新
  • Android Studio 1.5或更高版本。
  • Android Studio项目及其软件包名称(可以从ApplicationManifest.xml中找到软件包名称)。

将Firebase添加到您的应用程序

    在Firebase上
  • Create an account
  • Firebase console
  • 中创建项目
  • 点击Firebase for Android应用并按照说明操作。
  • 出现提示时,输入应用程序的包名称。
  • 下载google-services.json文件。
  • 将google-services.json文件放在应用的模块文件夹中。通常/ app。

添加SDK

如果您想将Firebase库集成到项目中,则需要执行一些基本任务来准备Android SDK项目。

  • 首先,将规则添加到根级build.gradle文件中,以包含 google-services插件:

    %Draw rectangle shapeInserter = vision.ShapeInserter; rectangle = int32([100 100 800 800]); J = step(shapeInserter, imageA , rectangle); imshow(J);

然后,在您的模块Gradle文件(通常是app / build.gradle)中,在文件底部添加apply plugin行以启用Gradle插件:

buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:3.0.0'
    }
}

您还应该添加您希望使用的Firebase SDK的依赖项 - 我们建议您从firebase-core开始,其中包括Firebase Analytics,但请参阅下面的完整列表。