SQLの窓

2016年09月26日


Firebase API + Android Studio : Database 処理の基本設定

Firebase のデータベースは、JSON データです。読み込みはイベントを使用し、保存は API の呼び出しで直接行います。

具体的には、DatabaseReference のスーパークラス である Query の addListenerForSingleValueEvent 経由で DataSnapshot を取得してその中からデータを取得します。

読込み記事
Firebase API + Android Studio : Database のデータを Java に取得する方法は3通りあります。

保存は、DatabaseReference のメソッドを使用する事によって完結します。もちろん、更新された事のイベントを取得はできますが、最初のアプローチとしてはこの二つを設定するだけでいいと思います。

書込み記事
Firebase API + Android Studio : Database にデータを保存は単純で、DatabaseReference の setValue メソッドを使用します

Android Studio に必要なもの

1) Google Play services を SDK マネージャからインストールしておきます。



2) Google APIs を含む System Image を SDK マネージャからインストールしておきます。

実機であれば必要ありませんが、エミュレータから実行する場合に必要です。この System Image を使用して AVD を作成しておく必要があります。


※ 経験則上、Use Host GPU をチェックしておくと、エミュレータを正しく回転してくれます。
※ 時々インストールしたアプリは削除したほうがいいです。

3) Android Studio の Settings で、Instant Run を無効にする

▼ 2.2 がリリースされたので、アップデートした場合は必要ないです


これは、Android Studio 2.2 以降で使用可能な機能の絡みで、Database 機能に直接は関係無いようですが コアなライブラリと関係しているようなので設定しておきます。

▼ 関連
Android Studio 2.2 で新規プロジェクトを作成すると『Could not reserve enough space for 1572864KB object heap』というエラーが出る場合の対処方法

※ 手順確認用 PDF 

Android Studio プロジェクトの準備手順

Firebase のドキュメントページで、『Install the Firebase SDK.』という記述が出て来ますが、これは プロジェクトレベルの Gradle に 『classpath 'com.google.gms:google-services:3.0.0'』を追加する事を指します。また、目的の API によって Module レベルの Gradle にライブラリを追加する作業が必要です。

1) Firebase コンソールで プロジェクトを作成

Firebase でログインすると、右上に『コンソールへ移動』とあるのでクリックして移動します。そこで『新規プロジェクトを作成』からプロジェクトを作成します。

2) Android Studio に Firebase 用の新しいプロジェクトを作成

Firebase に『新しいアプリ』を作成して、Android Studio と関係付ける必要があるのですが、Firebase 側の登録処理で、Android Studio のパッケージ名が必要になります。

3) Android アプリに Firebase を追加

作業的には、Firebase に追加するのですが、目的として 『Android アプリから参照可能な Firebase API を追加する作業』という意味になります。Android Studio のパッケージ名を入力して進めると、google-services.json のダウンロードが始まるので、Android Studio で作成したプロジェクトの app フォルダ内へダウンロードします。



4) プロジェクト build.gradle と app build.gradle の変更


▼ クリックするとクリップボードへコピーします


上が、『Install the Firebase SDK』です。この画像には、Module(アプリ) レベルの変更として apply plugin について書いてありますが、これは最後の行です。つまりは、以下を参考にして下さい。
apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "lightbox.sep.fire3"
        minSdkVersion 19
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:22.2.1'
    compile 'com.google.firebase:firebase-core:9.4.0'
    compile 'com.google.firebase:firebase-database:9.4.0'
}

apply plugin: 'com.google.gms.google-services'
※ 印刷用 PDF

firebase のライブラリとして core と database を追加しています。使用する処理によっていろいろなライブラリが用意されており、こちらから一覧を参照できます。


5) AndroidManifest の変更

インターネットアクセスが必要なので、android.permission.INTERNET を追加しておきます。

6) Firebase Database のセキュリティ設定の変更

デフォルトでは、ログイン処理をしないとアクセスできないので、最初は無条件にアクセス可能にしておきます。ルールタブから以下のように変更して下さい。



7) データの作成(サンプル)

以下のデータは、JSON 的には配列データです。Firebase では、表現上以下のようになります。途中のインデックスが飛んでしまうと、そこは null のデータが設定された事になり、インデックスとしては存在する事になります。



作成後、右上のメニューからエクスポートとして内容を確認して下さい。
{
  "users" : [ {
    "code" : "0001",
    "name" : "浦岡 友也"
  }, {
    "code" : "0002",
    "name" : "山村 洋代"
  }, {
    "code" : "0003",
    "name" : "多岡 冬行"
  } ]
}


※ 手順確認用 PDF


関連する記事

Firebase API + Android Studio : Database のデータを Java に取得する方法は3通りあります。

Firebase API + Android Studio : Database にデータを保存は単純で、DatabaseReference の setValue メソッドを使用します

Android Studio 2.2 で新規プロジェクトを作成すると『Could not reserve enough space for 1572864KB object heap』というエラーが出る場合の対処方法





【2016 Android Studioの最新記事】
posted by lightbox at 2016-09-26 15:30 | 2016 Android Studio | このブログの読者になる | 更新情報をチェックする
container 終わり



フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり