我有一个来自Firestore的免费计划,每天只读取5万个文档。我的应用程序每个用户获取1000个文档,如果我有50个用户,这将很快达到我的配额。我已经知道要解决此问题,我需要将免费计划转换为付费计划。目前,如果配额超过限制,我需要防止我的应用崩溃。
超过我的配额时,应用程序崩溃
com.google.android.gms.tasks.RuntimeExecutionException: com.google.firebase.firestore.FirebaseFirestoreException: RESOURCE_EXHAUSTED:已超过配额。
我的问题是如何捕获或处理配额异常以避免应用崩溃?
我尝试过这样
try {
db.collection("system_config")
.get().addOnCompleteListener(task -> {
if (task.getResult() != null)
for (QueryDocumentSnapshot snapshots : task.getResult()) {
SystemConfigModel model = snapshots.toObject(SystemConfigModel.class);
SystemConfigEntity entity1 = new SystemConfigEntity(model.getYoutube_api_key());
roomViewModel.insert(entity1);
global.setSystemConfigEntity(entity1);
}
}).addOnFailureListener(e -> Toast.makeText(StartUp.this, ""+e.getMessage(), Toast.LENGTH_LONG).show());
}catch(Exception e) {
Log.d(TAG, e.getMessage());
}
我正在尝试使用try and catch处理或捕获异常,但对我不起作用。我认为尝试捕获并不是防止我的应用崩溃的最佳方法。