【发布时间】:2016-11-18 15:28:57
【问题描述】:
我是一名新的 Firebase 开发人员。我正在开发一个允许用户将图像上传到 Firebase 存储的 android 应用程序。因为我使用的是 Spark 模式,所以我只有 5Gb 的存储空间。 我想限制用户上传到 Firebase 存储的图像大小。 下面是我用来将图像上传到 Firebase 存储的代码。
Uri imageUri = Uri.parse(imagePath);
//need permistion android.permission.MANAGE_DOCUMENTS to upload file.
final StorageReference photoRef = mStorageRef.child(Constants.FIREBASE_LOCATION_IMAGE_EXAM).child(imageUri.getLastPathSegment());
taskStarted();
photoRef.putFile(imageUri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
Log.d(TAG, "upload success");
mUploadExamTaskCount--;
examURLArray.add(new ExamPage(taskSnapshot.getDownloadUrl().toString()));
if (mUploadExamTaskCount == 0) {//upload files success.
/**
* update image link to database.
*/
DatabaseReference firebaseExamPage = FirebaseDatabase.getInstance().getReference(Constants.FIREBASE_LOCATION_EXAM_PAGE);
firebaseExamPage.child(examKey).setValue(examURLArray);
Log.d(TAG, "send upload exam success br");
Intent taskCompletedIntent = new Intent(ACTION_UPLOAD_EXAM_COMPLETED);
LocalBroadcastManager.getInstance(getApplicationContext()).sendBroadcast(taskCompletedIntent);
}
taskCompleted();
}
})
你知道如何解决这个问题吗?
【问题讨论】:
-
您可以使用安全规则限制 Firebase 存储本身的文件大小。查看this site 或this video 的第二部分