1. build.gradle (project) 에 google-service 플러그인 추가하기
buildscript {
repositories {
// Check that you have the following line (if not, add it):
google() // Google's Maven repository
}
dependencies {
// ...
// Add the following line:
classpath 'com.google.gms:google-services:4.2.0' // Google Services plugin
}
}
allprojects {
// ...
repositories {
// Check that you have the following line (if not, add it):
google() // Google's Maven repository
// ...
}
}
2. build.gradle (Module:app) 에 firebase 라이브러리 추가하기
implementation 'com.google.firebase:firebase-firestore:21.6.0'
3. 데이터 쓰기
FirebaseFirestore db = FirebaseFirestore.getInstance();
db.collection("파일경로").document("파일소경로")
.set("저장할데이터")
.addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
Log.d(TAG, "DocumentSnapshot successfully written!");
//데이터 쓰기 성공시 이벤트
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.w(TAG, "Error writing document", e);
}
});
4. 데이터 읽기
FirebaseFirestore db = FirebaseFirestore.getInstance();
db.collection("파일경로")
.get()
.addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()) {
for (QueryDocumentSnapshot document : task.getResult()) {
Log.d(TAG, document.getId() + " => " + document.getData());
//dataList는 사용하기 전에 초기화 한번 해주기
dataList.add(new ScrapNewsData(
document.getData().get("fileData").toString(),
document.getData().get("fileData2").toString()));
}
}
else {
Log.w(TAG, "Error => ", task.getException());
}
}
});