Difference between revisions of "Firebase"

From OnnoWiki
Jump to navigation Jump to search
 
(23 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{About|the software platform|artillery firebases|Fire support base|}}
+
'''Firebase''' adalah suatu layanan dari [[Google]] yang digunakan untuk mempermudah para pengembang aplikasi dalam mengembangkan aplikasi. Dengan adanya Firebase, pengembang aplikasi bisa fokus mengembangkan aplikasi tanpa harus memberikan usaha yang besar. Dua fitur yang menarik dari Firebase yaitu Firebase Remote Config dan Firebase Realtime Database. Selain itu terdapat fitur pendukung untuk aplikasi yang membutuhkan pemberitahuan yaitu Firebase Notification.
{{Multiple issues|
 
{{overly detailed|date=June 2018}}
 
{{third-party|date=June 2018}}
 
}}
 
 
 
{{Infobox dot-com company
 
| name    = Firebase, Inc.
 
| logo    =  Firebase logo1.png
 
| Pendiri          =  James Tamplin, Andrew Lee<ref>{{cite web |url=https://angel.co/firebase |title=Firebase - AngelList |accessdate=Jun 11, 2014 |penerbit=[[AngelList]]}}</ref>
 
| industri        = [[Mobile backend as a service]], [[Mobile application development]]
 
| produk        = Analytics, Cloud Messaging, Authentication, Realtime Database, Cloud Firestore, Storage, Hosting, ML Kit, Remote Config, Test Lab, Crash Reporting, Notifications, App Indexing, Dynamic Links, Invites
 
| induk          = [[Google]]
 
| url              = [https://firebase.google.com/ firebase.google.com]
 
| jenis_perusahaan    = [[Subsidiary]]
 
| lokasi_kota    = [[San Francisco]]
 
| lokasi_negara = [[United States]]<ref>{{cite web|url=https://firebase.google.com/support/|title=Contact Us|duplicate_publisher=|publisher=Firebase, Inc}}</ref>
 
| yayasan = {{Start date|2011|09}}<ref name="crunch2011">{{cite web |url=http://www.crunchbase.com/organization/firebase |title=Firebase - CrunchBase |accessdate=June 11, 2014 |publisher=[[CrunchBase]]}}</ref>
 
| tergabung    =
 
| area_layanan      = Global
 
| tanggal_rilis      = April 2012<ref>{{cite web |url=https://firebase.googleblog.com/2012/04/developers-meet-firebase.html|title=Developers, Meet Firebase!|aksestanggal=June 11, 2014|penerbit=Firebase, Inc}}</ref>
 
}}
 
 
 
'''Firebase''' adalah suatu layanan dari google untuk mempermudah para pengembang-pengembang aplikasi untuk mengembangkan aplikasinya. Firebase(BaaS ‘Backend as a Service’) ini merupakan solusi yang ditawarkan oleh Google untuk mempermudah pekerjaan Developer. Dengan adanya Firebase, apps developer bisa fokus mengembangkan aplikasi tanpa harus memberikan effort yang besar untuk urusan backend.Dua fitur menarik dari Firebase adalah Firebase Remote Config dan Firebase Real Time Database. Selain itu juga terdapat fitur pendukung untuk aplikasi yang memerlukan push notification yaitu Firebase Notification Console.
 
  
 
== Sejarah==
 
== Sejarah==
Firebase berevolusi dari Envolve, yang sebelumnya didirikan oleh James Tamplin dan Andrew Lee pada 2011. Envolve menyediakan pengembang API yang memungkinkan integrasi fungsi chat online ke situs web mereka. Setelah merilis layanan obrolan, Tamplin dan Lee menemukan bahwa itu digunakan untuk mengirimkan data aplikasi yang bukan pesan obrolan. Pengembang menggunakan Envolve untuk menyinkronkan data aplikasi seperti status game secara real time di seluruh penggunanya. Tamplin dan Lee memutuskan untuk memisahkan sistem obrolan dan arsitektur real-time yang menjalankannya. Mereka mendirikan Firebase sebagai perusahaan terpisah pada bulan April 2012.<ref>{{Cite web|url = http://www.fastcolabs.com/3031109/sometimes-youre-just-one-hop-from-something-huge|title = Sometimes You're Just One Hop From Something Huge|date = May 27, 2014|accessdate = June 11, 2014|website = |publisher = [[Fast Company (magazine)|Fast Company]]|last = Melendez|first = Steven}}</ref>
+
Firebase berevolusi dari Envolve, startup sebelumnya yang didirikan oleh James Tamplin dan Andrew Lee pada tahun 2011. Envolve menyediakan pengembang API yang memungkinkan integrasi fungsi obrolan daring ke situs web mereka. Setelah merilis layanan obrolan, Tamplin dan Lee menemukan bahwa itu digunakan untuk mengirimkan data aplikasi yang bukan pesan obrolan. Pengembang menggunakan Envolve untuk menyinkronkan data aplikasi seperti status permainan secara realtime di seluruh penggunanya. Tamplin dan Lee memutuskan untuk memisahkan sistem obrolan dan arsitektur waktu nyata yang menjalankannya. Mereka mendirikan Firebase sebagai perusahaan terpisah pada bulan April 2012.
  
Firebase Inc. mengumpulkan [[dana awal]] pada bulan Mei 2012. Perusahaan ini kemudian meningkatkan  [[pendanaan Seri A ]] pada Juni 2013. .<ref>{{Cite web|url = http://gigaom.com/2013/06/20/firebase-gets-5-6m-to-launch-its-paid-product-and-fire-up-its-base/|title = Firebase gets $5.6M to launch its paid product and fire up its base|date = June 6, 2013|accessdate = June 11, 2014|website = |publisher = [[Gigaom]]|last = Darrow|first = Barb}}</ref> Pada Oktober 2014, Firebase diakuisisi oleh Google.<ref name="google">{{cite web|url=https://firebase.googleblog.com/2014/10/firebase-is-joining-google.html|title=Firebase is Joining Google!|publisher=Firebase, Inc|author=Tamplin, James|accessdate=October 22, 2014}}</ref> Pada Oktober 2015, Google mengakuisisi Divshot untuk menggabungkannya dengan tim Firebase.  Sejak akuisisi, Firebase telah tumbuh di dalam Google dan memperluas layanannya untuk menjadi platform terpadu bagi pengembang seluler.  Firebase sekarang terintegrasi dengan berbagai layanan Google lainnya untuk menawarkan produk dan skala yang lebih luas bagi pengembang. Pada bulan Januari 2017, Google mengakuisisi Fabric dan [[Crashlytics]] dari[[Twitter]] untuk bergabung dengan layanan tersebut ke tim Firebase.<ref>{{cite web|url=https://fabric.io/blog/fabric-joins-google|title=Fabric is Joining Google|date=January 18, 2017|first=Rich|last=Paret|accessdate=2017-01-18}}</ref><ref>{{cite web|url=https://firebase.googleblog.com/2017/01/FabricJoinsGoogle17.html|title=Welcoming Fabric to Google|date=January 18, 2017|first=Francis|last=Ma|accessdate=2017-01-18}}</ref> Firebase meluncurkan Firestore Cloud , sebuah Basis Data Dokumen, pada bulan Oktober 2017. <ref>{{Cite web|url=https://techcrunch.com/2017/10/03/google-launches-cloud-firestore-a-new-document-database-for-app-developers |title=Google launches Cloud Firestore, a new document database for app developers|website=TechCrunch|access-date=2018-07-16}}</ref><ref>{{Cite web|url=https://www.infoq.com/news/2017/10/google-firestore|title=Google Announces Firestore, a Document Database|website=InfoQ|access-date=2017-10-19}}</ref><ref>{{Cite news|url=http://www.androidpolice.com/2017/10/03/firebase-launching-cloud-firestore-new-document-database-featuring-realtime-sync-no-hassle-scaling-offline-support/|title=Firebase is launching Cloud Firestore, a new document database featuring realtime sync, no-hassle scaling, and offline support|date=2017-10-03|work=Android Police|access-date=2017-10-19|language=en-US}}</ref><ref>{{Cite news|url=https://www.androidheadlines.com/2017/10/googles-cloud-firestore-lets-focus-app-development.html|title=Google's Cloud Firestore Lets You Focus On App Development {{!}} Androidheadlines.com|date=2017-10-05|work=AndroidHeadlines.com {{!}}|access-date=2017-10-19|language=en-US}}</ref>
+
Firebase Inc. mengumpulkan dana awal pada bulan Mei 2012. Perusahaan ini kemudian meningkatkan  [[pendanaan Seri A ]] pada bulan Juni 2013. Pada bulan Oktober 2014, Firebase diakuisisi oleh Google. Pada bulan Oktober 2015, [[Google]] mengakuisisi Divshot untuk menggabungkannya dengan Tim Firebase.  Sejak akuisisi, Firebase telah berkembang di Google dan memperluas layanannya untuk menjadi platform terpadu bagi pengembang aplikasi.  Firebase sekarang terintegrasi dengan berbagai layanan Google lainnya, untuk menawarkan produk dan skala yang lebih luas bagi pengembang aplikasi. Pada bulan Januari 2017, Google mengakuisisi Fabric dan Crashlytics dari [[Twitter]] untuk bergabung dengan layanan tersebut ke Tim Firebase. Firebase meluncurkan Cloud Firestore , sebuah database dokumen, pada bulan Oktober 2017.
  
 
== Layanan ==
 
== Layanan ==
Layanan Firebase tidak seperti dulu yang memberikan Trial Plan, sekarang kita dapat memanfaatkan Firebase secara Gratis! Tentunya dengan batasan tertentu. Firebase tersedia dalam tiga opsi, yaitu: SPARK (Free), FLAME ($25 per bulan), dan BLAZE (bayar sesuai pemakaian). Anda dapat membandingkan ketiga opsi tersebut melalui [[https://firebase.google.com/pricing/]] <ref>{{cite web |url=https://firebase.google.com/pricing/}}</ref>.
+
Layanan Firebase tidak seperti dulu yang memberikan Percobaan, sekarang dapat memanfaatkan Firebase secara Gratis, tentunya dengan batasan tertentu. Firebase tersedia dalam tiga opsi, yaitu: SPARK (Gratis), FLAME ($25 per bulan), dan BLAZE (bayar sesuai pemakaian). Anda dapat membandingkan ketiga pilihan tersebut melalui [[https://firebase.google.com/pricing/]]
 
 
package com.modelpaper.mad.it17121002;
 
 
 
import android.content.ContentValues;
 
import android.content.Context;
 
import android.database.Cursor;
 
import android.database.sqlite.SQLiteDatabase;
 
import android.database.sqlite.SQLiteOpenHelper;
 
import android.util.Log;
 
 
 
import java.util.ArrayList;
 
 
 
 
 
 
 
public class DBHandler extends SQLiteOpenHelper {
 
 
 
    public DBHandler(Context context) {
 
        super(context, "user_db", null, 1);
 
 
 
    }
 
 
 
    @Override
 
    public void onCreate(SQLiteDatabase db) {
 
 
 
        String createQuery = "CREATE TABLE "+UserProfile.Users.TABLE_NAME +
 
                "( "+UserProfile.Users.COL_ID +" INTEGER PRIMARY KEY AUTOINCREMENT ,"+UserProfile.Users.COL_USERNAME+" TEXT UNIQUE," +
 
                UserProfile.Users.COL_PASSWORD +" TEXT, "+UserProfile.Users.COL_GENDER +" TEXT, "+UserProfile.Users.COL_DOB +" TEXT"+")";
 
 
 
        Log.d("createQuery",createQuery);
 
 
 
        try {
 
            db.execSQL(createQuery);
 
        }
 
        catch (Exception e){
 
            e.printStackTrace();
 
            Log.e("Exception",e.getMessage());
 
        }
 
 
 
    }
 
 
 
    @Override
 
    public void onUpgrade(SQLiteDatabase db, int i, int i1) {
 
 
 
        String createQuery = "CREATE TABLE "+UserProfile.Users.TABLE_NAME
 
                +"( "+UserProfile.Users.COL_ID +" INTEGER PRIMARY KEY AUTOINCREMENT ,"
 
                +UserProfile.Users.COL_USERNAME+" TEXT,"
 
                + UserProfile.Users.COL_PASSWORD +" TEXT,"
 
                +UserProfile.Users.COL_GENDER +" TEXT, "
 
                +UserProfile.Users.COL_DOB+" TEXT"+")";
 
 
 
        Log.d("createQuery",createQuery);
 
 
 
        try {
 
            db.execSQL(createQuery);
 
        }
 
        catch (Exception e){
 
            e.printStackTrace();
 
            Log.e("Exception",e.getMessage());
 
        }
 
 
 
 
 
    }
 
 
 
    public boolean addInfo(UserProfile.Users users){
 
 
 
        SQLiteDatabase db = this.getWritableDatabase();
 
 
 
        String insertQuery = "INSERT INTO "+UserProfile.Users.TABLE_NAME
 
                +"("+UserProfile.Users.COL_USERNAME
 
                +","+UserProfile.Users.COL_PASSWORD+","
 
                +UserProfile.Users.COL_GENDER+","
 
                + UserProfile.Users.COL_DOB+") "
 
 
 
                + "VALUES('"+users.getUsername()
 
                +"','"+users.getPassword()
 
                +"','"+users.getGender()
 
                +"','"+users.getDob()+"')";
 
 
 
        Log.d("insertQuery",insertQuery);
 
 
 
        try {
 
            db.execSQL(insertQuery);
 
            return true;
 
        }
 
        catch (Exception e){
 
            e.printStackTrace();
 
            Log.d("Exception",e.getMessage());
 
        }
 
 
 
        db.close();
 
        return false;
 
    }
 
 
 
    public boolean updateInfor(UserProfile.Users users){
 
 
 
        SQLiteDatabase db = this.getWritableDatabase();
 
 
 
        ContentValues values = new ContentValues();
 
 
 
        String username = users.getUsername();
 
        String password = users.getPassword();
 
        String dob = users.getDob();
 
        String gender = users.getGender();
 
        int id = users.getId();
 
 
 
        values.put(UserProfile.Users.COL_DOB,dob);
 
        values.put(UserProfile.Users.COL_GENDER,gender);
 
        values.put(UserProfile.Users.COL_PASSWORD,password);
 
        values.put(UserProfile.Users.COL_USERNAME,username);
 
 
 
        int result = db.update(UserProfile.Users.TABLE_NAME,values,
 
                UserProfile.Users.COL_ID+" = ?"
 
                ,new String[]{String.valueOf(id)});
 
 
 
        if(result >0)
 
            return true;
 
 
 
            return false;
 
    }
 
 
 
 
 
    public ArrayList<UserProfile.Users> readAllInfor(){
 
 
 
        ArrayList<UserProfile.Users> userList = new ArrayList<>();
 
 
 
        SQLiteDatabase db = this.getWritableDatabase();
 
 
 
        String readAllQuery = "SELECT * FROM "+UserProfile.Users.TABLE_NAME;
 
 
 
        Cursor cursor = db.rawQuery(readAllQuery,null);
 
 
 
        if(cursor.moveToFirst()){
 
            do{
 
                UserProfile.Users users = UserProfile.getProfile().getUser();
 
 
 
                users.setId(Integer.parseInt(cursor.getString(0)));
 
                users.setUsername(cursor.getString(1));
 
                users.setPassword(cursor.getString(2));
 
                users.setGender(cursor.getString(3));
 
                users.setDob(cursor.getString(4));
 
 
 
                userList.add(users);
 
 
 
            }while (cursor.moveToNext());
 
        }
 
 
 
        return userList;
 
 
 
    }
 
 
 
    public UserProfile.Users readAllInfor(String userName){
 
 
 
        SQLiteDatabase db = this.getWritableDatabase();
 
 
 
        String readSingleQuery = "SELECT * FROM "+ UserProfile.Users.TABLE_NAME+" WHERE "+ UserProfile.Users.COL_USERNAME + " =  '"+ userName+"'";
 
 
 
        Cursor cursor = db.rawQuery(readSingleQuery,null);
 
 
 
        if(cursor.moveToFirst()){
 
 
 
            UserProfile.Users users = UserProfile.getProfile().getUser();
 
 
 
            users.setId(Integer.parseInt(cursor.getString(0)));
 
            users.setUsername(cursor.getString(1));
 
            users.setPassword(cursor.getString(2));
 
            users.setGender(cursor.getString(3));
 
            users.setDob(cursor.getString(4));
 
 
 
            return users;
 
        }
 
 
 
      return null;
 
    }
 
 
 
    public UserProfile.Users readAllInfor(int id){
 
 
 
        SQLiteDatabase db = this.getWritableDatabase();
 
 
 
        String readSingleQuery = "SELECT * FROM "+ UserProfile.Users.TABLE_NAME+" WHERE "+ UserProfile.Users.COL_ID + " =  '"+ id+"'";
 
 
 
        Cursor cursor = db.rawQuery(readSingleQuery,null);
 
 
 
        if(cursor.moveToFirst()){
 
 
 
            UserProfile.Users users = UserProfile.getProfile().getUser();
 
 
 
            users.setId(Integer.parseInt(cursor.getString(0)));
 
            users.setUsername(cursor.getString(1));
 
            users.setPassword(cursor.getString(2));
 
            users.setGender(cursor.getString(3));
 
            users.setDob(cursor.getString(4));
 
 
 
            return users;
 
        }
 
 
 
        return null;
 
    }
 
 
 
 
 
 
 
    public void deleteInfo(String username){
 
 
 
        SQLiteDatabase db = this.getWritableDatabase();
 
 
 
        String deleteQuery = "DELETE FROM "+ UserProfile.Users.TABLE_NAME+" WHERE "+ UserProfile.Users.COL_USERNAME +" = '"+ username +"' ";
 
        Log.d("deleteQuery ",deleteQuery);
 
        db.execSQL(deleteQuery);
 
        db.close();
 
    }
 
 
 
 
 
 
 
}
 
  
 
=== Fitur Firebase ===
 
=== Fitur Firebase ===
  
 
==== Firebase Cloud Messaging ====
 
==== Firebase Cloud Messaging ====
Dulu dikenal sebagai [[Google Cloud Messaging]] (GCM), [[Firebase Cloud Messaging]] (FCM) dapat mengirim dan menerima pesan lintas platform seperti [[Android (operating system)|Android]], [[iOS]], dan[[web application]],yang pada tahun 2016 dapat digunakan tanpa menggunakan biaya.<ref>{{Cite web|url=https://firebase.google.com/docs/cloud-messaging/|title=Firebase Cloud Messaging|website=Google Developers|language=en|access-date=2016-05-28}}</ref> Firebase Cloud Messaging / FCM, adalah layanan yang diberikan oleh Firebase untuk menggantikan Google Cloud Messaging (GCM). Pihak Google menyarankan untuk aplikasi yang masih menggunakan GCM untuk segera migrasi ke FCM. Fitur-fitur yang diberikan oleh GCM sebenarnya tidak terlalu jauh berbeda dengan GCM. Dengan FCM kita bisa memberikan push notification dan membuat komunikasi dua arah antara device. Teknologi yang digunakan terbagi menjadi dua :
+
Dulu dikenal sebagai Google Cloud Messaging (GCM), Firebase Cloud Messaging (FCM) dapat mengirim dan menerima pesan lintas platform seperti [[Android (sistem operasi)|Android]], [[iOS]], dan [[aplikasi web]],yang pada tahun 2016 dapat digunakan tanpa menggunakan biaya Firebase Cloud Messaging (FCM), adalah layanan yang diberikan oleh Firebase untuk menggantikan Google Cloud Messaging. Pihak Google menyarankan untuk aplikasi yang masih menggunakan Google Cloud Messaging untuk segera migrasi ke Firebase Cloud Messaging. Fitur-fitur yang diberikan oleh Firebase Cloud Messaging sebenarnya tidak terlalu jauh berbeda dengan Google Cloud Messaging. Dengan Firebase Cloud Messaging kita bisa memberikan pemberitahuan dan membuat komunikasi dua arah antara perangkat. Teknologi yang digunakan terbagi menjadi dua yaitu:
  
 
* XMPP (Extensible Messaging and Presence Protocol)
 
* XMPP (Extensible Messaging and Presence Protocol)
* HTTP (Hypertext Transfer Protocol).
+
* [[HTTP]] (Hypertext Transfer Protocol).
Untuk XMPP kita harus membangun server XMPP terlebih dahulu, sedangkan untuk HTTP kita bisa menggunakan console yang disediakan oleh Firebase. Kita juga bisa mengatur push notification yang ingin kita kirim, contohnya kita hanya ingin mengirimkan notifikasi kepada segmentasi user / audience yang membeli handphone dengan merk ‘A’. Atau kita ingin mengirimkan notifikasi hanya kepada user yang menggunakan aplikasi dengan versi 1.0. Selain itu ada juga fitur untuk mengirimkan notifikasi berdasarkan ‘topic’. Fitur ini mirip dengan ‘user attribute’, tetapi dengan ‘topic’, user bisa melakukan kegiatan ‘subscribe’ dan ‘unsubscribe’. <ref>{{Cite web|url=https://coolnetkid.wordpress.com/2016/09/08/android-apa-itu-firebase/|title=Firebase Cloud Messaging|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
+
Untuk XMPP harus membangun server XMPP terlebih dahulu, sedangkan untuk HTTP bisa menggunakan [[console]] yang disediakan oleh Firebase.
  
 
==== Firebase Authentication ====
 
==== Firebase Authentication ====
Firebase Auth merupakan layanan sistem otentikasi yang menerapkan client-side code, sehingga user dapat [[mendaftar|login ke aplikasi]] Facebook, GitHub, Twitter dan Google (dan[[Google Play Games]]). Selain itu, Firebase termasuk sistem manajemen pengguna di mana pengembang dapat mengaktifkan otentikasi pengguna dengan login email dan kata sandi yang disimpan dengan Firebase.<ref>{{Cite web|url=https://firebase.google.com/docs/auth/|title=Firebase Auth|publisher=Firebase, Inc.|accessdate=May 19, 2016}}</ref>
+
Firebase Authentication merupakan layanan sistem otentikasi yang menerapkan client-side code, sehingga pengguna dapat mendaftar dan [[login]] ke aplikasi [[Facebook]], [[GitHub]], [[Twitter]] dan [[Google]] ([[Google Play Games]]). Selain itu, Firebase termasuk sistem manajemen pengguna dimana pengembang dapat mengaktifkan otentikasi pengguna dengan login [[email]] dan kata sandi yang disimpan dengan Firebase. Sebagian besar aplikasi perlu mengetahui identitas pengguna. Dengan mengetahui identitas pengguna, aplikasi dapat menyimpan data pengguna secara aman di cloud dan memberikan pengalaman personal yang sama di setiap perangkat pengguna. Firebase Authentication mendukung otentikasi menggunakan sandi, nomor telepon, penyedia identitas gabungan yang populer, seperti Google, Facebook, dan Twitter, dan lain-lain.
  
 
==== Firebase Remote Config====
 
==== Firebase Remote Config====
Firebase Remote Config adalah fitur yang memungkinkan kita untuk melakukan perubahan konfigurasi di dalam aplikasi Android / iOS, tanpa harus melakukan update aplikasi di Play Store / App Store. Salah satu contohnya adalah ketika hari Natal, kita bisa mengganti tema aplikasi dengan warna merah-putih. Atau ketika hari tahun baru, kita bisa mengganti tema aplikasi dengan warna hijau-silver, dll.
+
Firebase Remote Config adalah fitur yang memungkinkan digunakan untuk melakukan perubahan konfigurasi di dalam aplikasi [[Android]] / [[iOS]], tanpa harus melakukan pembaruan aplikasi di Play Store / App Store. Cara kerja dari Remote Config adalah aplikasi menyimpan terlebih dahulu file XML yang berisi parameter-parameter yang nilainya akan bisa diganti melalui console Firebase. Kemudian objek firebase di dalam aplikasi akan melakukan request data dari server, kemudian me’load data-data tersebut. Secara umum, objek Firebase di dalam aplikasi akan melakukan request 12 jam / 1x, tetapi hal tersebut bisa diubah sesuai yang diinginkan. Salah satu catatan dari [[Google]] adalah tidak boleh menggunakan Remote Config untuk melakukan perubahan yang krusial, seperti mengubah ijin yang dibutuhkan oleh aplikasi.
  
Cara kerja dari Remote Config adalah aplikasi menyimpan terlebih dahulu file XML yang berisi parameter-parameter yang nilainya akan bisa diganti melalui console Firebase. Kemudian objek firebase di dalam aplikasi akan melakukan request data dari server, kemudian me’load data-data tersebut. Secara default, objek firebase di dalam aplikasi akan melakukan request 12 jam / 1x, tetapi kita bisa mengubahnya bila kita inginkan.
+
==== Firebase Realtime Database ====
 
+
Firebase menyediakan realtime database dan backend sebagai layanan. Layanan ini menyediakan pengembang [[Antarmuka Pemrograman Aplikasi]] yang memungkinkan data aplikasi disinkronkan di seluruh klien dan disimpan di Firebase cloud . Perusahaan menyediakan pustaka klien yang memungkinkan integrasi dengan [[Android (sistem operasi)|Android]], [[iOS]], [[JavaScript]], [[Java (bahasa pemrograman)|Java]], [[Swift (bahasa pemrograman)|Swift]] dan [[Node.js]] aplikasi. Database juga dapat diakses melalui REST API dan mengikat untuk beberapa [[JavaScript]] Frameworks seperti AngularJS, React, Ember.js dan Backbone.js. Developer yang menggunakan realtime database dapat mengamankan data dengan menggunakan aturan keamanan yang diberlakukan oleh server perusahaan. Cloud Firestore yang merupakan generasi mendatang dari Firebase Realtime Database dirilis untuk penggunaan beta. Firebase Realtime Database merupakan database yang di-host pada cloud. Data disimpan sebagai [[JSON]] dan disinkronkan secara realtime ke setiap klien yang terhubung.
Salah satu catatan dari Google adalah kita tidak boleh menggunakan Remote Config untuk melakukan perubahan yang krusial, seperti mengubah permission yang dibutuhkan oleh aplikasi.<ref>{{Cite web|url=https://coolnetkid.wordpress.com/2016/09/08/android-apa-itu-firebase/|title=Firebase Remote Config|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
 
 
 
==== Realtime Database ====
 
 
 
Firebase menyediakan raltime databse dan backend sebagai layanan. Layanan ini menyediakan pengembang aplikasi API yang memungkinkan data aplikasi disinkronkan di seluruh klien dan disimpan di Firebase cloud .<ref>{{Cite web|url = https://venturebeat.com/2013/02/13/firebases-backend-makes-it-ten-times-easier-to-build-apps/|title = Firebase’s scalable backend makes it ’10 times easier’ to build apps|date = February 13, 2013|accessdate = June 12, 2014|website = |publisher = VentureBeat|last = Farr|first = Christina}}</ref><ref>{{Cite web|url = https://venturebeat.com/2013/08/29/firebase-is-building-a-dropbox-for-developers/|title = Firebase is building a Dropbox for developers|date = August 29, 2013|accessdate = June 12, 2014|website = |publisher = VentureBeat|last = Marshall|first = Matt}}</ref> Perusahaan menyediakan pustaka klien yang memungkinkan integrasi dengan[[Android (sistem operasi)|Android]], [[iOS]], [[JavaScript]], [[Java (bahasa pemrograman)|Java]], [[Objective-C]], [[Swift (bahasa pemrograman)|Swift]] and [[Node.js]] aplikasi. Database juga dapat diakses melalui REST API dan mengikat untuk beberapa [[JavaScript frameworks]] seperti [[AngularJS]], [[React (JavaScript library)|React]], [[Ember.js]] dan[[Backbone.js]].<ref>{{Cite web|url=https://firebase.google.com/docs/database/|title=Firebase Realtime Database|last=|first=|date=|website=|publisher=Firebase, Inc.|accessdate=May 19, 2016}}</ref> The REST API menggunakan [[Server-Mengirim Peristiwa|Server-Mengirim Peristiwa]] protokol, yang merupakan API untuk membuat koneksi HTTP untuk menerima pemberitahuan push dari server. Pengembang yang menggunakan basis data waktu nyata dapat mengamankan data mereka dengan menggunakan aturan keamanan yang diberlakukan oleh sisi server perusahaan.<ref>{{Cite web|url = http://gigaom.com/2012/12/18/firebase-secures-its-real-time-back-end-service/|title = Firebase secures its real-time back-end service|date = Dec 18, 2012|accessdate = June 12, 2014|website = |publisher = Gigaom|last = Darrow|first = Barb}}</ref>Cloud Firestore yang merupakan generasi mendatang Firebase dari Realtime Database dirilis untuk penggunaan beta.
 
  
 
==== Firebase Storage ====
 
==== Firebase Storage ====
Firebase Storage menyediakan upload dan download file dengan aman untuk aplikasi Firebase, apa pun kualitas jaringannya. Pengembang dapat menggunakannya untuk menyimpan gambar, audio, video, atau konten lain yang dibuat pengguna secara langsung dari Firebase Client SDK. Firebase Storage didukung oleh Google Cloud Storage.<ref>{{Cite web|url=https://firebase.google.com/docs/storage/|title=Firebase Storage|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
+
Firebase Storage dirancang untuk pengembang aplikasi yang perlu menyimpan dan menampilkan konten buatan pengguna, seperti foto atau video dan menambahkan keamanan [[Google]] pada unggah dan unduh berkas untuk aplikasi Firebase, bagaimana pun kualitas jaringannya. Pengembang dapat menggunakannya untuk menyimpan gambar, audio, video, atau konten lain yang dibuat pengguna secara langsung dari Firebase SDK Klien. Firebase Storage didukung oleh Google Cloud Storage.
  
 
==== Firebase Hosting ====
 
==== Firebase Hosting ====
 +
Firebase Hosting menyediakan hosting yang cepat dan aman untuk aplikasi [[web]] serta konten yang statis dan dinamis. Firebase Hosting adalah [[layanan hosting web] statis dan dinamis yang diluncurkan pada 13 Mei 2014. Mendukung hosting berkas statis seperti [[Cascading Style Sheets | CSS]], [[HTML]], [[JavaScript]] dan berkas lainnya, serta dukungan melalui Cloud Functions. Layanan ini mengirimkan berkas melalui Content Delivery Network (CDN) atau melalui enkripsi [[HTTP Secure]] (HTTPS) dan [[Secure Sockets Layer]] (SSL). Firebase bermitra dengan Fastly, CDN, untuk menyediakan CDN yang mendukung Firebase Hosting. Perusahaan menyatakan bahwa Firebase Hosting tumbuh dari permintaan pelanggan, pengembang menggunakan Firebase untuk realtime database tetapi membutuhkan tempat untuk meng-host konten mereka.
  
Firebase Hosting adalah [[layanan hosting web] statis dan dinamis yang diluncurkan pada 13 Mei 2014. Mendukung hosting file statis seperti [[Cascading Style Sheets | CSS]], [[HTML]], [[JavaScript]] dan file lainnya, serta dukungan melalui Cloud Functions.<ref>[https://firebase.google.com/docs/hosting/functions dynamic Node.js support through Cloud Functions]</ref> Layanan ini mengirimkan file melalui [[content delivery network]] (CDN) melalui enkripsi [[HTTP Secure]] (HTTPS) dan [[Secure Sockets Layer]] (SSL). Firebase bermitra dengan Fastly, CDN, untuk menyediakan CDN yang mendukung Firebase Hosting. Perusahaan menyatakan bahwa Firebase Hosting tumbuh dari permintaan pelanggan; pengembang menggunakan Firebase untuk database real-time tetapi membutuhkan tempat untuk meng-host konten mereka.<ref>{{Cite web|url = https://techcrunch.com/2014/05/13/firebase-adds-web-hosting-to-its-database-platform/|title = Firebase Adds Web Hosting To Its Database Platform|date = May 13, 2014|accessdate = June 12, 2014|website = |publisher = [[TechCrunch]]|last = Lardinois|first = Frederic}}</ref><ref>{{Cite web|url = https://venturebeat.com/2014/05/13/firebase-hosting/|title = Firebase adds hosting to make app development even easier|date = May 13, 2014|accessdate = June 12, 2014|website = |publisher = [[VentureBeat]]|last = Novet|first = Jordan}}</ref>
+
Dua fitur yang menarik adalah Firebase Remote Config dan Firebase Realtime Database. Secara sederhananya, Remote Config adalah fitur yang memungkinkan pengembang mengganti / mengubah beberapa konfigurasi aplikasi [[Android]] / [[iOS]] tanpa harus memberikan pembaruan aplikasi melalui Play Store / App Store. Salah satu konfigurasi yang bisa dimanipulasi adalah seperti warna / tema aplikasi.
 
 
Dua fitur yang menarik adalah Firebase Remote Config dan Firebase Real Time Database. Secara sederhananya, Remote Config adalah fitur yang memungkinkan developer mengganti / mengubah beberapa konfigurasi aplikasi Android / iOS tanpa harus memberikan update aplikasi via Play Store / App Store. Salah satu konfigurasi yang bisa dimanipulasi adalah seperti warna / tema aplikasi.
 
 
 
Sedangkan Firebase Real Time Database adalah fitur yang memberikan sebuah NoSQL database yang bisa diakses secara Real Time oleh pengguna aplikasi. Dan hebatnya adalah aplikasi bisa menyimpan data secara lokal ketika tidak ada akses internet, kemudian melakukan sync data segera setelah mendapatkan akses internet.
 
  
'''ML Kit'''
+
Sedangkan Firebase Realtime Database adalah fitur yang memberikan sebuah [[NoSQL]] database yang bisa diakses secara [[waktu nyata]] oleh pengguna aplikasi. Dan hebatnya adalah aplikasi bisa menyimpan data secara lokal ketika tidak ada akses internet, kemudian melakukan sinkronisasi data segera setelah mendapatkan akses internet.
 
 
ML Kit adalah [[pembelajaran mesin|sistem pembelajaran mesin seluler]] untuk pengembang yang diluncurkan pada 8 Mei 2018 dalam versi beta selama [[Google I/O|Google I/O 2018]].<ref>{{Cite news|url=https://developers.googleblog.com/2018/05/introducing-ml-kit.html|title=Introducing ML Kit|work=Google Developers Blog|access-date=2018-07-07|language=en-US}}</ref> Fitur ML Kit API beragam fitur termasuk pengenalan teks, mendeteksi wajah, memindai barcode, melabeli gambar dan mengenali tengara. Saat ini tersedia untuk [[iOS]] atau [[Android (sistem operasi)|Android]] pengembang. Anda juga dapat mengimpor model Lite [[TensorFlow]] Anda sendiri, jika API yang diberikan tidak cukup.<ref>{{Cite web|url=https://firebase.google.com/products/ml-kit/?gclid=Cj0KCQjwyYHaBRDvARIsAHkAXcsqZYVO1Ki66xWp_1fSFHrCRXRT3PuruIJfPmw90m4Mtzk5uk7fonIaAhyREALw_wcB|title=ML Kit for Firebase {{!}} Machine learning for mobile developers  {{!}}  Firebase|website=Firebase|language=en|access-date=2018-07-07}}</ref> API dapat digunakan di perangkat atau di cloud.
 
  
 
=== Stabilitas===
 
=== Stabilitas===
  
==== Crashlytics ====
+
==== Firebase Crash Reporting====
Crash Reporting membuat laporan rinci tentang kesalahan dalam aplikasi. Kesalahan dikelompokkan ke dalam cluster tumpukan pelacakan yang serupa dan diurutkan berdasarkan tingkat keparahan dampaknya pada pengguna aplikasi. Selain laporan otomatis, pengembang dapat membuat log peristiwa khusus untuk membantu menangkap langkah-langkah yang mengarah ke kerusakan.<ref>{{Cite web|url=https://firebase.google.com/docs/crash/|title=Firebase Crash Reporting|website=Google Developers|language=en|access-date=2016-05-28}}</ref> Sebelum mendapatkan Crashlytics, Firebase menggunakan Firebase Crash Reporting sendiri. Firebase Crash Reporting merupakan layanan yang diberikan oleh Firebase untuk keperluan merekam setiap exception yang terjadi pada aplikasi. Report yang diberikan cukup detail dengan beberapa filter seperti yang digunakan pada Analytics.<ref>{{Cite web|url=https://coolnetkid.wordpress.com/2016/09/08/android-apa-itu-firebase/|title=Firebase Crash Reporting|website=Google Developers|language=en|access-date=2016-05-28}}</ref> Crash reporting ini juga dibagi menjadi dua bagian :
+
Firebase Crash Reporting digunakan untuk membuat laporan rinci tentang kesalahan dalam aplikasi. Kesalahan dikelompokkan ke dalam kelompok tumpukan pelacakan yang serupa dan diurutkan berdasarkan tingkat keparahan dampaknya pada pengguna aplikasi. Selain laporan otomatis, pengembang dapat membuat log peristiwa khusus untuk membantu menangkap langkah-langkah yang mengarah ke kerusakan. Sebelum mendapatkan Crashlytics, Firebase menggunakan Firebase Crash Reporting sendiri. Firebase Crash Reporting merupakan layanan yang diberikan oleh Firebase untuk keperluan merekam setiap pengecualian yang terjadi pada aplikasi. Report yang diberikan cukup detail dengan beberapa filter seperti yang digunakan pada Analytics. Crash Reporting ini juga dibagi menjadi dua bagian yaitu :
*Non Fatal exception, untuk exception yang tidak berdampak fatal (kita bisa membuat custom exception).
+
*Non Fatal exception, untuk pengecualian yang tidak berdampak fatal (bisa membuat pengecualian khusus).
*Fatal exception, untuk exception yang fatal (aplikasi crash).
+
*Fatal exception, untuk pengecualian yang fatal (aplikasi crash).
  
==== Performance ====
+
==== Firebase Performance ====
Firebase Performance memberikan wawasan tentang kinerja aplikasi dan latensi yang dialami pengguna aplikasi.
+
Firebase Performance memberikan wawasan tentang kinerja aplikasi yang dialami pengguna aplikasi. Firebase Performance adalah layanan yang membantu untuk memperoleh data tentang karakteristik performa aplikasi [[iOS]] dan [[Android]]. Gunakan Firebase Performance SDK untuk mengumpulkan data performa aplikasi, kemudian tinjau dan analisis data tersebut di Firebase console. Dengan Firebase Performance, dapat memahami dimana dan kapan performa aplikasi dapat ditingkatkan, sehingga dapat menggunakan informasi tersebut untuk memperbaiki masalah performa.
  
 
==== Firebase Tes Lab untuk Android dan iOS ====
 
==== Firebase Tes Lab untuk Android dan iOS ====
Firebase Tes Lab untuk Android dan iOS menyediakan infrastruktur berbasis cloud untuk menguji aplikasi Android dan iOS. Dengan satu operasi, pengembang dapat memulai pengujian aplikasi mereka di berbagai macam perangkat dan konfigurasi perangkat. Hasil pengujian termasuk log, video, dan tangkapan layar tersedia dalam proyek di Firebase console. Bahkan jika pengembang tidak menulis kode pengujian apa pun untuk aplikasi mereka, Test Lab dapat menjalankan aplikasi secara otomatis, mencari gangguan. Tes Lab untuk iOS saat ini dalam versi beta.<ref>{{Cite web|url=https://firebase.google.com/docs/test-lab/|title=Firebase Test Lab for Android|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
+
Firebase Tes Lab untuk [[Android]] dan [[iOS]] menyediakan infrastruktur berbasis cloud untuk menguji aplikasi Android dan iOS. Dengan satu operasi, pengembang dapat memulai pengujian aplikasi di berbagai macam perangkat dan konfigurasi perangkat. Hasil pengujian termasuk log, video, dan tangkapan layar, tersedia dalam proyek di Firebase console. Bahkan jika pengembang tidak menulis kode pengujian apa pun untuk aplikasi , Tes Lab dapat menjalankan aplikasi secara otomatis dengan mencari gangguan. Tes Lab untuk iOS saat ini dalam versi beta.
  
 
=== Grow ===
 
=== Grow ===
  
==== Firebase Notifikasi ====
+
==== Firebase Notifications ====
Firebase Notifikasi adalah layanan yang memungkinkan pemberitahuan untuk pengguna yang ditargetkan oleh pengembang aplikasi seluler tanpa biaya.<ref>{{Cite web|url=https://firebase.google.com/docs/notifications/|title=Firebase Notifications|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
+
Firebase Notifications adalah layanan yang memungkinkan pemberitahuan untuk pengguna yang ditargetkan oleh pengembang aplikasi seluler tanpa biaya.
  
==== Pengindeksan Aplikasi Firebase ====
+
==== Firebase App Indexing ====
Pengindeksan Aplikasi Firebase, sebelumnya Pengindeksan Google Aplikasi, mendapatkan aplikasi ke penelusuran Google. penambahan aplikasi indeks untuk mempromosikan kedua jenis hasil aplikasi dalam penelusuran Google dan juga menyediakan kelengkapan otomatis kueri.<ref>{{Cite web|url=https://firebase.google.com/docs/app-indexing/|title=Firebase App Indexing|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
+
Firebase App Indexing digunakan untuk memasukkan aplikasi ke [[Google Search]]. Jika pengguna sudah menginstal aplikasi , pengguna dapat menjalankannya dan dapat langsung membuka konten yang dicari. Firebase App Indexing kembali berinteraksi dengan pengguna aplikasi dengan cara membantu pengguna menemukan konten publik dan pribadi secara langsung di perangkat pengguna. Bahkan, Firebase App Indexing menawarkan kelengkapan otomatis kueri untuk membantu pengguna menemukan sesuatu yang mereka butuhkan dengan lebih cepat. Jika pengguna belum memiliki aplikasi tersebut, kueri yang relevan akan memicu untuk memasang [[aplikasi]] dari hasil Google Search. Firebase App Indexing, sebelumnya yaitu Google App Indexing , mendapatkan aplikasi ke Google Search. Penambahan App Indexing untuk mempromosikan kedua jenis hasil aplikasi dalam Google Search dan juga menyediakan kelengkapan otomatis kueri.
  
 
==== Firebase Dynamic Links ====
 
==== Firebase Dynamic Links ====
Firebase Dynamic Links adalah URL cerdas yang secara dinamis mengubah perilaku untuk memberikan pengalaman terbaik di berbagai platform (situs web / iOS / Android) serta tautan dalam ke APP.<ref>{{Cite web|url=https://firebase.google.com/docs/dynamic-links/|title=Firebase Dynamic Links|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
+
Firebase Dynamic Links adalah [[URL]] cerdas yang secara dinamis mengubah perilaku untuk memberikan pengalaman terbaik di berbagai platform (situs web / [[iOS]] / [[Android]]) serta tautan dalam ke APP. Dynamic Links berfungsi di semua pemasangan aplikasi: jika pengguna membuka Dynamic Links di iOS atau Android dan aplikasi belum dipasang, pengguna akan diminta untuk memasang aplikasi tersebut terlebih dahulu. Setelah dipasang, aplikasi akan mulai berjalan dan dapat mengakses link.
  
 
==== Firebase Invites ====
 
==== Firebase Invites ====
Firebase Invites adalah solusi lintas platform untuk mengirim undangan email dan SMS yang dipersonalisasi, pengguna on-boarding, dan mengukur dampak dari undangan.<ref>{{Cite web|url=https://firebase.google.com/docs/invites/|title=Firebase Invites|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
+
Firebase Invites adalah solusi siap pakai untuk berbagi aplikasi melalui email atau SMS. Untuk menyesuaikan pengalaman pengguna invites atau untuk menghasilkan link secara terprogram, gunakan Firebase Dynamic Links.
 
 
==== Firebase Remote Config ====
 
 
 
Firebase Remote Config adalah layanan cloud yang memungkinkan pengembang mengubah perilaku dan tampilan aplikasi mereka tanpa mengharuskan pengguna mengunduh pembaruan aplikasi.<ref>{{Cite web|url=https://firebase.google.com/docs/remote-config/|title=Firebase Remote Config|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
 
  
==== Adwords ====
+
== Proyek Open source ==
[[Adwords]] adalah layanan periklanan online Google yang terintegrasi dengan untuk memungkinkan pengembang menargetkan pengguna menggunakan Firebase Analytics
 
 
 
=== Earn ===
 
[[Earn]]{{disambiguation needed|date=June 2018}} ke google admob dan lingkup pemasaran aplikasi.
 
 
 
==== Admob ====
 
[[Admob]] adalah produk Google yang terintegrasi dengan pengguna Firebase.
 
 
 
== Open source projects ==
 
  
 
=== Firepad ===
 
=== Firepad ===
 
+
Firepad adalah [[open source]] kolaborasi editor realtime. Dirilis di bawah Lisensi MIT, Firepad digunakan oleh beberapa editor, termasuk Atlassian Stash Realtime Editor dan Koding.
Firepad adalah [[open source]] [[editor real-time kolaboratif]]. Dirilis di bawah Lisensi MIT, Firepad digunakan oleh beberapa editor, termasuk [[Atlassian]] Stash Realtime Editor dan [[Koding]].<ref>{{Cite web|url = https://www.wired.com/2013/04/firepad-firebase/|title = How to Build Your Own Google Docs (Without Google)|date = April 9, 2013|accessdate = June 12, 2014|website = |publisher = [[Wired (magazine)|Wired]]|last = Metz|first = Cade}}</ref><ref>{{Cite web|url = https://firepad.firebaseapp.com/|title = Firepad - An open source collaborative code and text editor|date = |accessdate = June 12, 2014|website = |publisher = Firebase, Inc.|last = |first = }}</ref>
 
  
 
=== Firechat ===
 
=== Firechat ===
 
+
Firechat adalah aplikasi obrolan realtime open source. Firechat dirilis di bawah Lisensi MIT.
Firechat adalah aplikasi obrolan realtime open source. Ini dirilis di bawah Lisensi MIT.<ref>{{Cite web|url = https://firechat.firebaseapp.com/|title = Firechat - open source realtime chat built on Firebase|date = |accessdate = June 12, 2014|website = |publisher = Firebase, Inc.|last = |first = }}</ref>
 
  
 
=== GeoFire ===
 
=== GeoFire ===
GeoFire adalah pustaka sumber terbuka yang memanfaatkan basis data waktu nyata Firebase, yang memungkinkan pengembang aplikasi menyimpan dan menanyakan serangkaian kunci berdasarkan lokasi geografis.<ref>{{Cite web|url = https://github.com/firebase/geofire|title = GeoFire — Realtime location queries with Firebase|date = |accessdate = December 20, 2016|website = |publisher = |last = |first = }}</ref>
+
GeoFire adalah sumber pustaka terbuka yang memanfaatkan Firebase Realtime Database , yang memungkinkan pengembang aplikasi menyimpan dan menanyakan serangkaian kunci berdasarkan lokasi geografis.
  
 
== External links ==
 
== External links ==
* {{Official website|https://firebase.google.com}}
 
  
{{Google Inc.}}
+
* https://firebase.google.com
 +
 
 +
 
 +
==Pranala Menarik==
  
[[Category:Companies established in 2011]]
+
* [[Firebase: Overview]]
[[Category:Companies based in San Francisco]]
+
* [[Firebase: Analytics]]
[[Category:Cloud computing providers]]
+
* [[Firebase: Develop]]
[[Category:Cloud platforms]]
+
* [[Firebase: Grow]]
 +
* [[Firebase: Earn]]
 +
* [[Firebase: Instalasi]]

Latest revision as of 10:43, 24 September 2019

Firebase adalah suatu layanan dari Google yang digunakan untuk mempermudah para pengembang aplikasi dalam mengembangkan aplikasi. Dengan adanya Firebase, pengembang aplikasi bisa fokus mengembangkan aplikasi tanpa harus memberikan usaha yang besar. Dua fitur yang menarik dari Firebase yaitu Firebase Remote Config dan Firebase Realtime Database. Selain itu terdapat fitur pendukung untuk aplikasi yang membutuhkan pemberitahuan yaitu Firebase Notification.

Sejarah

Firebase berevolusi dari Envolve, startup sebelumnya yang didirikan oleh James Tamplin dan Andrew Lee pada tahun 2011. Envolve menyediakan pengembang API yang memungkinkan integrasi fungsi obrolan daring ke situs web mereka. Setelah merilis layanan obrolan, Tamplin dan Lee menemukan bahwa itu digunakan untuk mengirimkan data aplikasi yang bukan pesan obrolan. Pengembang menggunakan Envolve untuk menyinkronkan data aplikasi seperti status permainan secara realtime di seluruh penggunanya. Tamplin dan Lee memutuskan untuk memisahkan sistem obrolan dan arsitektur waktu nyata yang menjalankannya. Mereka mendirikan Firebase sebagai perusahaan terpisah pada bulan April 2012.

Firebase Inc. mengumpulkan dana awal pada bulan Mei 2012. Perusahaan ini kemudian meningkatkan pendanaan Seri A pada bulan Juni 2013. Pada bulan Oktober 2014, Firebase diakuisisi oleh Google. Pada bulan Oktober 2015, Google mengakuisisi Divshot untuk menggabungkannya dengan Tim Firebase. Sejak akuisisi, Firebase telah berkembang di Google dan memperluas layanannya untuk menjadi platform terpadu bagi pengembang aplikasi. Firebase sekarang terintegrasi dengan berbagai layanan Google lainnya, untuk menawarkan produk dan skala yang lebih luas bagi pengembang aplikasi. Pada bulan Januari 2017, Google mengakuisisi Fabric dan Crashlytics dari Twitter untuk bergabung dengan layanan tersebut ke Tim Firebase. Firebase meluncurkan Cloud Firestore , sebuah database dokumen, pada bulan Oktober 2017.

Layanan

Layanan Firebase tidak seperti dulu yang memberikan Percobaan, sekarang dapat memanfaatkan Firebase secara Gratis, tentunya dengan batasan tertentu. Firebase tersedia dalam tiga opsi, yaitu: SPARK (Gratis), FLAME ($25 per bulan), dan BLAZE (bayar sesuai pemakaian). Anda dapat membandingkan ketiga pilihan tersebut melalui [[1]]

Fitur Firebase

Firebase Cloud Messaging

Dulu dikenal sebagai Google Cloud Messaging (GCM), Firebase Cloud Messaging (FCM) dapat mengirim dan menerima pesan lintas platform seperti Android, iOS, dan aplikasi web,yang pada tahun 2016 dapat digunakan tanpa menggunakan biaya Firebase Cloud Messaging (FCM), adalah layanan yang diberikan oleh Firebase untuk menggantikan Google Cloud Messaging. Pihak Google menyarankan untuk aplikasi yang masih menggunakan Google Cloud Messaging untuk segera migrasi ke Firebase Cloud Messaging. Fitur-fitur yang diberikan oleh Firebase Cloud Messaging sebenarnya tidak terlalu jauh berbeda dengan Google Cloud Messaging. Dengan Firebase Cloud Messaging kita bisa memberikan pemberitahuan dan membuat komunikasi dua arah antara perangkat. Teknologi yang digunakan terbagi menjadi dua yaitu:

  • XMPP (Extensible Messaging and Presence Protocol)
  • HTTP (Hypertext Transfer Protocol).

Untuk XMPP harus membangun server XMPP terlebih dahulu, sedangkan untuk HTTP bisa menggunakan console yang disediakan oleh Firebase.

Firebase Authentication

Firebase Authentication merupakan layanan sistem otentikasi yang menerapkan client-side code, sehingga pengguna dapat mendaftar dan login ke aplikasi Facebook, GitHub, Twitter dan Google (Google Play Games). Selain itu, Firebase termasuk sistem manajemen pengguna dimana pengembang dapat mengaktifkan otentikasi pengguna dengan login email dan kata sandi yang disimpan dengan Firebase. Sebagian besar aplikasi perlu mengetahui identitas pengguna. Dengan mengetahui identitas pengguna, aplikasi dapat menyimpan data pengguna secara aman di cloud dan memberikan pengalaman personal yang sama di setiap perangkat pengguna. Firebase Authentication mendukung otentikasi menggunakan sandi, nomor telepon, penyedia identitas gabungan yang populer, seperti Google, Facebook, dan Twitter, dan lain-lain.

Firebase Remote Config

Firebase Remote Config adalah fitur yang memungkinkan digunakan untuk melakukan perubahan konfigurasi di dalam aplikasi Android / iOS, tanpa harus melakukan pembaruan aplikasi di Play Store / App Store. Cara kerja dari Remote Config adalah aplikasi menyimpan terlebih dahulu file XML yang berisi parameter-parameter yang nilainya akan bisa diganti melalui console Firebase. Kemudian objek firebase di dalam aplikasi akan melakukan request data dari server, kemudian me’load data-data tersebut. Secara umum, objek Firebase di dalam aplikasi akan melakukan request 12 jam / 1x, tetapi hal tersebut bisa diubah sesuai yang diinginkan. Salah satu catatan dari Google adalah tidak boleh menggunakan Remote Config untuk melakukan perubahan yang krusial, seperti mengubah ijin yang dibutuhkan oleh aplikasi.

Firebase Realtime Database

Firebase menyediakan realtime database dan backend sebagai layanan. Layanan ini menyediakan pengembang Antarmuka Pemrograman Aplikasi yang memungkinkan data aplikasi disinkronkan di seluruh klien dan disimpan di Firebase cloud . Perusahaan menyediakan pustaka klien yang memungkinkan integrasi dengan Android, iOS, JavaScript, Java, Swift dan Node.js aplikasi. Database juga dapat diakses melalui REST API dan mengikat untuk beberapa JavaScript Frameworks seperti AngularJS, React, Ember.js dan Backbone.js. Developer yang menggunakan realtime database dapat mengamankan data dengan menggunakan aturan keamanan yang diberlakukan oleh server perusahaan. Cloud Firestore yang merupakan generasi mendatang dari Firebase Realtime Database dirilis untuk penggunaan beta. Firebase Realtime Database merupakan database yang di-host pada cloud. Data disimpan sebagai JSON dan disinkronkan secara realtime ke setiap klien yang terhubung.

Firebase Storage

Firebase Storage dirancang untuk pengembang aplikasi yang perlu menyimpan dan menampilkan konten buatan pengguna, seperti foto atau video dan menambahkan keamanan Google pada unggah dan unduh berkas untuk aplikasi Firebase, bagaimana pun kualitas jaringannya. Pengembang dapat menggunakannya untuk menyimpan gambar, audio, video, atau konten lain yang dibuat pengguna secara langsung dari Firebase SDK Klien. Firebase Storage didukung oleh Google Cloud Storage.

Firebase Hosting

Firebase Hosting menyediakan hosting yang cepat dan aman untuk aplikasi web serta konten yang statis dan dinamis. Firebase Hosting adalah [[layanan hosting web] statis dan dinamis yang diluncurkan pada 13 Mei 2014. Mendukung hosting berkas statis seperti CSS, HTML, JavaScript dan berkas lainnya, serta dukungan melalui Cloud Functions. Layanan ini mengirimkan berkas melalui Content Delivery Network (CDN) atau melalui enkripsi HTTP Secure (HTTPS) dan Secure Sockets Layer (SSL). Firebase bermitra dengan Fastly, CDN, untuk menyediakan CDN yang mendukung Firebase Hosting. Perusahaan menyatakan bahwa Firebase Hosting tumbuh dari permintaan pelanggan, pengembang menggunakan Firebase untuk realtime database tetapi membutuhkan tempat untuk meng-host konten mereka.

Dua fitur yang menarik adalah Firebase Remote Config dan Firebase Realtime Database. Secara sederhananya, Remote Config adalah fitur yang memungkinkan pengembang mengganti / mengubah beberapa konfigurasi aplikasi Android / iOS tanpa harus memberikan pembaruan aplikasi melalui Play Store / App Store. Salah satu konfigurasi yang bisa dimanipulasi adalah seperti warna / tema aplikasi.

Sedangkan Firebase Realtime Database adalah fitur yang memberikan sebuah NoSQL database yang bisa diakses secara waktu nyata oleh pengguna aplikasi. Dan hebatnya adalah aplikasi bisa menyimpan data secara lokal ketika tidak ada akses internet, kemudian melakukan sinkronisasi data segera setelah mendapatkan akses internet.

Stabilitas

Firebase Crash Reporting

Firebase Crash Reporting digunakan untuk membuat laporan rinci tentang kesalahan dalam aplikasi. Kesalahan dikelompokkan ke dalam kelompok tumpukan pelacakan yang serupa dan diurutkan berdasarkan tingkat keparahan dampaknya pada pengguna aplikasi. Selain laporan otomatis, pengembang dapat membuat log peristiwa khusus untuk membantu menangkap langkah-langkah yang mengarah ke kerusakan. Sebelum mendapatkan Crashlytics, Firebase menggunakan Firebase Crash Reporting sendiri. Firebase Crash Reporting merupakan layanan yang diberikan oleh Firebase untuk keperluan merekam setiap pengecualian yang terjadi pada aplikasi. Report yang diberikan cukup detail dengan beberapa filter seperti yang digunakan pada Analytics. Crash Reporting ini juga dibagi menjadi dua bagian yaitu :

  • Non Fatal exception, untuk pengecualian yang tidak berdampak fatal (bisa membuat pengecualian khusus).
  • Fatal exception, untuk pengecualian yang fatal (aplikasi crash).

Firebase Performance

Firebase Performance memberikan wawasan tentang kinerja aplikasi yang dialami pengguna aplikasi. Firebase Performance adalah layanan yang membantu untuk memperoleh data tentang karakteristik performa aplikasi iOS dan Android. Gunakan Firebase Performance SDK untuk mengumpulkan data performa aplikasi, kemudian tinjau dan analisis data tersebut di Firebase console. Dengan Firebase Performance, dapat memahami dimana dan kapan performa aplikasi dapat ditingkatkan, sehingga dapat menggunakan informasi tersebut untuk memperbaiki masalah performa.

Firebase Tes Lab untuk Android dan iOS

Firebase Tes Lab untuk Android dan iOS menyediakan infrastruktur berbasis cloud untuk menguji aplikasi Android dan iOS. Dengan satu operasi, pengembang dapat memulai pengujian aplikasi di berbagai macam perangkat dan konfigurasi perangkat. Hasil pengujian termasuk log, video, dan tangkapan layar, tersedia dalam proyek di Firebase console. Bahkan jika pengembang tidak menulis kode pengujian apa pun untuk aplikasi , Tes Lab dapat menjalankan aplikasi secara otomatis dengan mencari gangguan. Tes Lab untuk iOS saat ini dalam versi beta.

Grow

Firebase Notifications

Firebase Notifications adalah layanan yang memungkinkan pemberitahuan untuk pengguna yang ditargetkan oleh pengembang aplikasi seluler tanpa biaya.

Firebase App Indexing

Firebase App Indexing digunakan untuk memasukkan aplikasi ke Google Search. Jika pengguna sudah menginstal aplikasi , pengguna dapat menjalankannya dan dapat langsung membuka konten yang dicari. Firebase App Indexing kembali berinteraksi dengan pengguna aplikasi dengan cara membantu pengguna menemukan konten publik dan pribadi secara langsung di perangkat pengguna. Bahkan, Firebase App Indexing menawarkan kelengkapan otomatis kueri untuk membantu pengguna menemukan sesuatu yang mereka butuhkan dengan lebih cepat. Jika pengguna belum memiliki aplikasi tersebut, kueri yang relevan akan memicu untuk memasang aplikasi dari hasil Google Search. Firebase App Indexing, sebelumnya yaitu Google App Indexing , mendapatkan aplikasi ke Google Search. Penambahan App Indexing untuk mempromosikan kedua jenis hasil aplikasi dalam Google Search dan juga menyediakan kelengkapan otomatis kueri.

Firebase Dynamic Links

Firebase Dynamic Links adalah URL cerdas yang secara dinamis mengubah perilaku untuk memberikan pengalaman terbaik di berbagai platform (situs web / iOS / Android) serta tautan dalam ke APP. Dynamic Links berfungsi di semua pemasangan aplikasi: jika pengguna membuka Dynamic Links di iOS atau Android dan aplikasi belum dipasang, pengguna akan diminta untuk memasang aplikasi tersebut terlebih dahulu. Setelah dipasang, aplikasi akan mulai berjalan dan dapat mengakses link.

Firebase Invites

Firebase Invites adalah solusi siap pakai untuk berbagi aplikasi melalui email atau SMS. Untuk menyesuaikan pengalaman pengguna invites atau untuk menghasilkan link secara terprogram, gunakan Firebase Dynamic Links.

Proyek Open source

Firepad

Firepad adalah open source kolaborasi editor realtime. Dirilis di bawah Lisensi MIT, Firepad digunakan oleh beberapa editor, termasuk Atlassian Stash Realtime Editor dan Koding.

Firechat

Firechat adalah aplikasi obrolan realtime open source. Firechat dirilis di bawah Lisensi MIT.

GeoFire

GeoFire adalah sumber pustaka terbuka yang memanfaatkan Firebase Realtime Database , yang memungkinkan pengembang aplikasi menyimpan dan menanyakan serangkaian kunci berdasarkan lokasi geografis.

External links


Pranala Menarik