Bước 1. Đăng nhập Firebase console (google.com), và tạo dự án về cơ sở dữ liệu trên Firebase.
- Tên dự án trên này là độc lập với tên dự án android, tất nhiên có thể cùng tên.
- Một dự án Firebase
- cho phép ta sử dụng nhiều loại dịch vụ clound khác của Firebase chứ không riêng gì Realtime Database.
- có thể tạo nhiều cơ sở dữ liệu
- Ví dụ đặt tên là : Android-Projects mang ý nghĩa là để lưu các CSQL là việc với lập trình android.
Bước 2. Tạo dự án trên Android Studio.
Tại bước này, ta đặt tên dự án, đồng thời lưu ý cách đặt tên package- được dùng để đồng bộ với CSDL noSQL Firebase
Ví dụ:
- Project name: QuanLyChiTieu
- Package name: vn.edu.tinhoc123.quanlychitieu
Bạn có thể dừng ở đây và xem video hướng dẫn
Bước 3: Cách 1 – Kết nối ứng dụng Android với CSQL sử dụng hỗ trợ của Android Studio
- menu: Tool –> Firebase –> chọn Realtime Database (ở cửa sổ bên phải màn hình )
- tiếp đến chọn Get stared with Real time Databse [Java]
- khi này trình duyệt web được mở và mở luôn cho chúng ta trang console.firebase.google.com
- tiếp đến, trên website console.firebase đang mở, ta chọ dự án Firebase đã tạo ở Bước 1 (vd: Android-Projects)
- tiếp ta chọn Connect
- khi này ta nhận được một trang web thông bao kết quả
Your Android Studio project is connected to your Firebase Android app
You can now use Firebase in your project! Go back to Android Studio to start using one of the Firebase SDKs.
- Một App trong dự án Firebase tạo ở bước 1, liên kết với ứng dụng android của mình ĐÃ ĐƯỢC TẠO RA, có tên theo tên package
- tiếp đến chọn Get stared with Real time Databse [Java]
Bước 4: Trên Android Studio
– Ở cửa sổ phải màn hình ta thấy :
Mục 1 nhỏ: (1) Connect your app to Firebase có trạng thái là Connected (đã kết nối thành công)
Ta cần thực hiện tiếp mục 2 nhỏ ngay dưới, để Thêm cơ sở dữ liệu vào dự án của mình. (2) Add the Real time Database to your app , ta chọn nhấn vào : Add the Real time Database SDK to your app
- mục tiêu đề thêm các tùy chọn vào tệp Gradle của dự án –> Accept change
Bước 4. Trên console firebase
1. Ta mở dự án đã tạo (Android Project) và click chọn App đã được tạo (có tên giống tên Package của Andoird
2. Chọn loại sản phẩm để thêm vào dự án (Choose a product to add to your app), –> ta chọn Realtime Database –> và nhấn tạo Database (Creat Database ) –> next –> Start in TEST MODE –> Enable
Bước 5. Thực hiện một thử nghiệm thêm dữ liệu (dạng Key-Value) từ Ứng dụng di động (nội dung đỏ đậm)
package vn.edu.tinhoc123.quanlychitieu;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import com.google.firebase.database.DatabaseReference;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Write a message to the database
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("message");
myRef.setValue("Hello, World!");
}
}
Chạy ứng dụng, và kiểm tra trên Firebase ta thấy: dòng 1 là tên CSDL, dòng 2 là dữ liệu với key là “message” và value là “Hello, World!”
https://android-projects-bb691-default-rtdb.firebaseio.com/ message: "Hello, World!"
Bước 6. Đảm bảo ứng dụng có thể cập nhật thời gian thực ngay khi có sự thay đổi dữ liệu trên Firebase
ta cần thêm bộ lắng nghe và xử lý sự kiện ValueEventListener cho biến tham chiếu đến CSDL (ví dụ ở bước 5, biến là myRef)
package vn.edu.tinhoc123.quanlychitieu;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Write a message to the database
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("message");
myRef.setValue("Hello, World!");
// Read from the database
myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
// This method is called once with the initial value and again
// whenever data at this location is updated.
String value = dataSnapshot.getValue(String.class);
Toast.makeText(getBaseContext(), "Value is: " + value, Toast.LENGTH_LONG).show();
}
@Override
public void onCancelled(DatabaseError error) {
// Failed to read value
Toast.makeText(getBaseContext(), "Failed to read value.",Toast.LENGTH_LONG ).show();
}
});
}
}
– Chạy ứng dụng Android,
– Trên Trong CSDL firebase, thực hiện sửa dữ liệu của phần value (ví dụ Mai Cường Thọ)
– quan sát trên ứng dụng android đang chạy sẽ nhận được thông báo trên màn hình
===============> Mời xem full video hướng dẫn tại https://www.youtube.com/@TinHocTiiL