Firebase: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Tidak ada ringkasan suntingan
Tidak ada ringkasan suntingan
Baris 16:
}}
 
'''Firebase''' adalah suatu layanan dari [[Google]] yang digunakan untuk mempermudah para pengembang aplikasi untukdalam mengembangkan aplikasi. Firebase merupakan solusi yang ditawarkan oleh [[Google]] untuk mempermudah pekerjaan pengembang. Dengan adanya Firebase, pengembang aplikasi bisa fokus mengembangkan aplikasi tanpa harus memberikan effortusaha yang besar. Dua fitur yang menarik dari Firebase adalahyaitu 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 chat online ke situs web mereka. Setelah merilis layanan chat, Tamplin dan Lee menemukan bahwa itu digunakan untuk mengirimkan data aplikasi yang bukan pesan obrolan. DeveloperPengembang menggunakan Envolve untuk menyinkronkan data aplikasi seperti status game secara realtime di seluruh penggunanya. Tamplin dan Lee memutuskan untuk memisahkan sistem obrolan dan arsitektur realtimewaktu nyata 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 Inc. mengumpulkan dana awal pada bulan Mei 2012. Perusahaan ini kemudian meningkatkan [[pendanaan Seri A ]] pada bulan 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 Joining Google!|publisher=Firebase, Inc|author=Tamplin, James|access-date= Oktober 15, 2018}}</ref> Pada bulan Oktober 2015, [[Google]] mengakuisisi Divshot untuk menggabungkannya dengan Tim Firebase. Sejak akuisisi, Firebase telah tumbuhberkembang di dalam Google dan memperluas layanannya untuk menjadi platform terpadu bagi developerpengembang seluleraplikasi. Firebase sekarang terintegrasi dengan berbagai layanan Google lainnya, untuk menawarkan produk dan skala yang lebih luas bagi developerpengembang aplikasi. Pada bulan Januari 2017, Google mengakuisisi Fabric dan Crashlytics dari [[Twitter]] untuk bergabung dengan layanan tersebut ke timTim 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 Cloud Firestore , sebuah Databasedatabase Dokumendokumen, 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>
 
== Layanan ==
Layanan Firebase tidak seperti dulu yang memberikan Trial Plan, sekarang dapat memanfaatkan Firebase secara Gratis!, Tentunyatentunya 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/|title= Firebase Pricing | accessdate= Oktober 16, 2018|language=id}}</ref>.
 
=== 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 (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 Google Cloud Messaging (GCM)untuk segera migrasi ke Firebase Cloud Messaging (FCM). Fitur-fitur yang diberikan oleh Firebase Cloud Messaging (FCM)sebenarnya tidak terlalu jauh berbeda dengan Google Cloud Messaging (GCM). Dengan Firebase Cloud Messaging (FCM)kita bisa memberikan push notificationpemberitahuan dan membuat komunikasi dua arah antara perangkat. Teknologi yang digunakan terbagi menjadi dua yaitu:
 
* XMPP (Extensible Messaging and Presence Protocol)
Baris 36:
 
==== Firebase Authentication ====
Firebase Authentication merupakan layanan sistem otentikasi yang menerapkan client-side code, sehingga userpengguna dapat mendaftar dan [[login]] ke aplikasi [[Facebook]], [[GitHub]], [[Twitter]] dan [[Google]] ([[Google Play Games]]). Selain itu, Firebase termasuk sistem manajemen pengguna dimana developerpengembang dapat mengaktifkan otentikasi pengguna dengan login [[e-mailemail]] 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 menyediakan layanan backend, SDK yang mudah digunakan, dan library UI yang siap pakai untuk mengotentikasi pengguna ke aplikasi. Firebase Authentication mendukung otentikasi menggunakan sandi, nomor telepon, penyedia identitas gabungan yang populer, seperti Google, Facebook, dan Twitter, dan lain-lain.<ref>{{Cite web|url=https://firebase.google.com/docs/auth/|title=Firebase Auth|publisher=Firebase, Inc.|accessdate=May 19, 2016}}</ref>
 
==== 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 permissionijin yang dibutuhkan oleh 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>
 
==== Firebase Realtime Database ====
Firebase menyediakan realtime database 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]], [[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.<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 protokol, yang merupakan API untuk membuat koneksi [[HTTP]] untuk menerima push notification dari [[server]]. Developer yang menggunakan realtime database dapat mengamankan data mereka dengan menggunakan aturan keamanan yang diberlakukan oleh 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 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.<ref>{{Cite web|url=https://firebase.google.com/docs/database/|title= Firebase Realtime Database |accessdate=Oktober 18, 2018}}</ref>
Firebase Realtime Database merupakan database yang di-host pada cloud. Data disimpan sebagai [[JSON]] dan disinkronkan secara realtime ke setiap klien yang terhubung.<ref>{{Cite web|url=https://firebase.google.com/docs/database/|title= Firebase Realtime Database |accessdate=Oktober 18, 2018}}</ref>
 
==== Firebase Storage ====
Firebase Storage dirancang untuk developerpengembang aplikasi yang perlu menyimpan dan menampilkan konten buatan pengguna, seperti foto atau video dan menambahkan keamanan [[Google]] pada unggah dan unduh fileberkas 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 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 Hosting ====
Firebase Hosting menyediakan hosting yang cepat dan aman untuk aplikasi [[web]] serta konten yang statis dan dinamis.<ref>[https://firebase.google.com/docs/hosting/functions dynamic Node.js support through Cloud Functions]</ref> 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 fileberkas 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, developerpengembang menggunakan Firebase untuk database realtime database 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 Real Time Database. Secara sederhananya, Remote Config adalah fitur yang memungkinkan developerpengembang mengganti / mengubah beberapa konfigurasi aplikasi [[Android]] / [[iOS]] tanpa harus memberikan updatepembaruan aplikasi viamelalui Play Store / App Store. Salah satu konfigurasi yang bisa dimanipulasi adalah seperti warna / tema aplikasi.
 
Sedangkan Firebase Real TimeRealtime Database adalah fitur yang memberikan sebuah [[NoSQL]] database yang bisa diakses secara Realtimerealtime 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.<ref>{{Cite web|url=https://coolnetkid.wordpress.com/2016/09/08/android-apa-itu-firebase/|title= Firebase Realtime Database |language=id|access-date= Oktober 19, 2018}}</ref>
 
=== Stabilitas===
 
==== Firebase Crash Reporting====
Firebase Crash Reporting digunakan untuk membuat laporan rinci tentang kesalahan dalam aplikasi. Kesalahan dikelompokkan ke dalam clusterkelompok 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 exceptionpengecualian 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=id|access-date=Oktober 20, 2018}}</ref> Crash reporting ini juga dibagi menjadi dua bagian yaitu :
*Non Fatal exception, untuk exceptionpengecualian yang tidak berdampak fatal (bisa membuat custompengecualian exceptionkhusus).
*Fatal exception, untuk exceptionpengecualian yang fatal (aplikasi crash).
 
==== Firebase Performance ====
Firebase Performance memberikan wawasan tentang kinerja aplikasi dan latensi 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. <ref>{{Cite web|url=https://firebase.google.com/docs/perf-mon/?hl=id|title=Firebase Performance|website=Google Developers|language=id|access-date=Oktober 20, 2018}}</ref>
 
==== 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, developerpengembang 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 developerpengembang 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.<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>
 
=== Grow ===
 
==== Firebase Notifications ====
Firebase Notifications adalah layanan yang memungkinkan pemberitahuan untuk pengguna yang ditargetkan oleh developerpengembang aplikasi mobileseluler tanpa biaya.<ref>{{Cite web|url=https://firebase.google.com/docs/notifications/|title=Firebase Notifications|website=Google Developers|language=id|accessdate= Oktober 21, 2018}}</ref>
 
==== 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 menginstallmemasang [[aplikasi]] dari hasil Google Search. Firebase App Indexing, sebelumnya yaitu Google App Indexing Google, mendapatkan aplikasi ke Google Search. Penambahan App Indexing untuk mempromosikan kedua jenis hasil aplikasi dalam Google Search 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 Dynamic Links ====
Baris 82 ⟶ 80:
==== 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.<ref>{{Cite web|url=https://firebase.google.com/docs/invites/|title=Firebase Invites|website=Google Developers|language=en|access-date=2016-05-28}}</ref>
 
 
== Proyek Open source ==
Baris 93 ⟶ 90:
 
=== GeoFire ===
GeoFire adalah sumber pustaka terbuka yang memanfaatkan Firebase Realtime Database , yang memungkinkan developerpengembang 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>
 
== External links ==