如何将防火墙存储中的图像URL链接到Android中特定用户下的数据库

时间:2017-09-07 08:39:11

标签: android firebase firebase-realtime-database firebase-storage

我是新的消防基地。我正在开发一个应用程序。我已将配置文件图像和用户数据上传到fire base.But现在我很困惑如何将配置文件图片与特定用户相关联。例如Name = Hussain,Contact = ###########,存储中的配置文件图像是112313.jpg。另一个用户是name = Ali,contact = ########和profile image = 1323.jpg。 所以,问题是如何在hussain细节下获得hussain的图像,以及liaqat在liaqat细节下的图像。 提前致谢

1 个答案:

答案 0 :(得分:1)

将您的个人资料图片上传到firebase cloud storage后,您可以获取该图片的网址。然后,您可以将您的个人资料图片URL更新为实时数据库中的特定用户详细信息。请看下面的代码,

    // File or Blob
    file = Uri.fromFile(new File("path/to/mountains.jpg"));

    // Create the file metadata
    metadata = new StorageMetadata.Builder()
            .setContentType("image/jpeg")
            .build();

    // Upload file and metadata to the path 'images/mountains.jpg'
    uploadTask = storageRef.child("images/"+file.getLastPathSegment()).putFile(file, metadata);

    // Listen for state changes, errors, and completion of the upload.
    uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
        @Override
        public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
            // Handle successful uploads on complete
            Uri downloadUrl=taskSnapshot.getMetadata().getDownloadUrl();

FirebaseDatabase.getInstance().getReference('users').child('hussain_UID')
    .child('photoURL')
    .set(downloadUrl.toString());

        }
    });

希望这有助于您的查询。