Добавление данных в базу данных - PullRequest
0 голосов
/ 25 августа 2018

Я создаю приложение с помощью Kotlin на Android Studio. В приложении пользователям будет разрешено добавлять изображение, имя пользователя и номер телефона. перейти к другим видам деятельности. Упомянутая информация должна быть сохранена в приложении Cloud Firestore (Firebase).

Однако при кодировании функций пожарного магазина данные не сохраняются в базе данных

Может кто-нибудь помочь, пожалуйста?

Когда я создавал свое приложение, оно показывало:

Открыть картинку

Это мой первый пост о stackoverflow, поэтому дайте мне знать, если вы хотите узнать какую-либо дополнительную информацию.

Буду признателен за любую помощь, ребята.

Это мой код:

     setupBtn.setOnClickListener {
                val username: String = setupName.text.toString()
                val phoneNumber: String = setupPhoneNumber.text.toString()


                    if (!TextUtils.isEmpty(username) && 
     !TextUtils.isEmpty(phoneNumber)) { //if fields are not empty, proceed. Else, 
    tell user to fill both fields
                    setupProgressBar.visibility = View.VISIBLE
                    val userID = mAuth.currentUser!!.uid // saves user ID
                    val imagePATH: StorageReference = 
    storageRef.child("profile_images").child(userID + ".jpg")  //store the image 
  as the user ID
                    imagePATH.putFile(mainImageURI).addOnCompleteListener { 
  task ->
                        if (task.isSuccessful) {
                            //get the downloadURI of the image and store it
                            val downloadURI = 
  task.result.metadata!!.reference!!.downloadUrl.toString()

                            //A collection stores in the database that has a 
   1)name .. 2)phone number .. 3)image
                            val data = HashMap<String, Any>()
                            data.put("name", username)
                            data.put("phone number", phoneNumber)
                            data.put("image", downloadURI)

                            val docRef = 
mFirestore.collection("Users").document(userID).set(data)
                              docRef.addOnCompleteListener { task ->
                                if (task.isSuccessful) {
                                    Toast.makeText(this, "User Setting are 
 updated", Toast.LENGTH_LONG).show()
                                    val intent = Intent(this, 
PhotoBlog::class.java)
                                    startActivity(intent)
                                    finish()
                                } else {
                                    val errorMessage: String? = 
 task.exception!!.message
                                    Toast.makeText(this, "Database Error: 
 $errorMessage", Toast.LENGTH_LONG).show()
                                }
                            }
                        } else {
                            val errorMessage: String? = 
 task.exception!!.message
                            Toast.makeText(this, "Image Error: 
$errorMessage", Toast.LENGTH_LONG).show()
                        }
                        setupProgressBar.visibility = View.INVISIBLE
                    }
                } else {
                    Toast.makeText(this, "Please, fill both fields", 
Toast.LENGTH_LONG).show()
                    }
                }
            }

Я также импортировал необходимые библиотеки и определил переменную firestore

private lateinit var  mFirestore: FirebaseFirestore

mFirestore = FirebaseFirestore.getInstance()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...