Загрузить намерение Firestore Kotlin - PullRequest
0 голосов
/ 07 мая 2020

У меня проблема с моим намерением «Загрузить». Если вы посмотрите на мое изображение, вы увидите, что аудио и изображение для будки были загружены. Но когда я нажимаю «Загрузить», он берет только последний выбранный файл. Так что что-то идет не так, когда я выполняю свое «намерение». Печатный экран, как визуально описать мою проблему MY DATABASE мой код:

private fun handleSubmitButtonClick(){

        //upload photo/audio To firebase storage
        uploadPostBtn.isEnabled = false
        val photoUploadUri = URI as Uri
        val photoreference = storageRef.child("images/${System.currentTimeMillis()}-photo.jpg")
        photoreference.putFile(photoUploadUri)
            .continueWithTask { photoUploadTask ->
                Log.i(TAG, "upload bytes: ${photoUploadTask.result?.bytesTransferred}")
                photoreference.downloadUrl
            }

            .addOnCompleteListener { postCreationTask ->
                uploadPostBtn.isEnabled = true
                if (!postCreationTask.isSuccessful) {
                    Log.e(TAG, "exception during Firebase operations")
                    Toast.makeText(this, "Failed to save post", Toast.LENGTH_SHORT).show()
                }
                val audioUploadUri = URI as Uri
                val Audioreference =
                    storageRef.child("audios/${System.currentTimeMillis()}-audio.wav")
                Audioreference.putFile(audioUploadUri)
                    .continueWithTask { audioUploadTask ->
                        Log.i(TAG, "upload bytes: ${audioUploadTask.result?.bytesTransferred}")
                        Audioreference.downloadUrl
                    }
                    .continueWithTask { file ->
                        val post = Post(
                            textViewNameArtist.text.toString(),
                            textViewNameTrack.text.toString(),
                            file.result.toString(),
                            System.currentTimeMillis(),
                            signedInUser,
                            file.result.toString(), 
                            genreResult.text.toString()
                        )
                        firestoreDB.collection("posts").add(post)
                    }.addOnCompleteListener {
                        //image.setImageResource(0)
                        Toast.makeText(this, "Success", Toast.LENGTH_SHORT).show()
                        val ProfileIntent = Intent(this, ProfileActivity::class.java)
                        ProfileIntent.putExtra(EXTRA_USERNAME, signedInUser?.username)
                        startActivity(ProfileIntent)
                        finish()
                    }
...