什么是 firebase 以及如何在 Android 中使用它? [关闭]
Posted
技术标签:
【中文标题】什么是 firebase 以及如何在 Android 中使用它? [关闭]【英文标题】:What is firebase and how to use it in Android? [closed] 【发布时间】:2016-02-16 16:18:59 【问题描述】:我想创建一个 android 应用程序,作为作者,我可以在其中上传我的大学笔记,任何人都可以下载它。我读到 firebase 可以帮助我解决这个问题。谁能解释一下什么是firebase以及如何在我的参考中使用它?谢谢!
【问题讨论】:
是的,大卫东。 这很容易理解。但没有解释我如何将文件(如 PDF)动态更新到我的应用程序。还是我没看懂? 您在这个问题中没有问任何关于 PDF 文件的问题。我想你正在考虑你的另一个问题。 【参考方案1】:更新:自 2016 年 Google I/O 以来,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());
);
Firebase 用户界面
Firebase SDK 擅长保存和检索数据,但它与 ListAdapter
s 等 Android SDK 组件无关。为此,您可以使用the FirebaseUI library。
FirebaseUI 允许您将常用 UI 元素快速连接到 Firebase 数据库以进行数据存储。下面是使用带有FirebaseListAdapter
的 FirebaseUI 的示例。
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 非常全面(如果我自己这样做,人类可读)。
【讨论】:
【参考方案2】:Firebase 是一个 NoSQL 类型的数据库,它使用套接字,它允许客户端实时接收信息 - 无需向服务器发出 GET 请求。
这要求您在设置时将客户端“订阅”到数据库/集合。
就如何在应用程序中使用它而言,这取决于您希望在堆栈中使用的技术。 firebase 网站有文档建议您如何执行此操作。
此外,如果您只是基于希望拥有您所描述的功能而提出要求; Meteor 框架带有一个基于套接字的 NoSQL 后端数据库,非常容易实现;这里有一个教程; https://www.meteor.com/tutorials/blaze/creating-an-app
【讨论】:
【参考方案3】:您提出这个问题已经有一段时间了,Firebase 添加了新文档。它是这样说的,
先决条件
Android 的版本应该是 2.3 或更新的 Google Play 服务 9.2.1 或更新版本 Android Studio 1.5 或更高版本。 Android Studio 项目及其包名(包名可在 ApplicationManifest.xml 中找到)。将 Firebase 添加到您的应用程序
Create an account 在 Firebase 上。 在Firebase console中创建一个项目。 点击 Firebase for Android 应用并按照说明进行操作。 出现提示时,输入应用程序包名称。 下载 google-services.json 文件。 将 google-services.json 文件放在应用的模块文件夹中。通常是 /app。添加 SDK
如果您想将 Firebase 库集成到您的项目中,您需要执行一些基本任务来准备您的 Android SDK 项目。
首先,将规则添加到您的根级 build.gradle 文件中,以包含 谷歌服务插件:
buildscript
// ...
dependencies
// ...
classpath 'com.google.gms:google-services:3.0.0'
然后,在您的模块 Gradle 文件(通常是 app/build.gradle)中,在文件底部添加 apply plugin 行以启用 Gradle 插件:
apply plugin: 'com.android.application'
android
// ...
dependencies
// ...
compile 'com.google.firebase:firebase-core:9.2.1'
// ADD THIS AT THE BOTTOM
apply plugin: 'com.google.gms.google-services'
您还应该为希望使用的 Firebase SDK 添加依赖项 - 我们建议从包含 Firebase Analytics 的 firebase-core 开始,但请参阅下面的完整列表。
【讨论】:
You should also add the dependencies for the Firebase SDKs you wish to use - we recommend starting with the firebase-core, which include Firebase Analytics, but see below for the full list.
这是来自 Google 网站.... 这是什么意思?我们如何添加以及具体添加什么?
他从firebase.google.com/docs/android/setup复制了它,更喜欢它包含其余内容的链接以上是关于什么是 firebase 以及如何在 Android 中使用它? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
您如何使用 Firebase Firestore 将 RecyclerView 对象分配给用户最喜欢的对象?
在上传完成之前调用 Firebase Storage onSuccess