Фатальное ИСКЛЮЧЕНИЕ: main, kotlin.KotlinNullPointerException - PullRequest
0 голосов
/ 04 января 2019

Я хочу реализовать загрузку изображений и видео в firebase. Я использовал два метода, названные onSaveInstanceState() и onRestoreInstanceState(), чтобы сохранить переменные. Оно работает! ..но когда активность вращается, она выдает ошибку, как показано ниже

Ошибка Logcat

Вот мой код:

storage = FirebaseStorage.getInstance()
storageReference = storage?.getReferenceFromUrl("gs://mypublicservice-98437.appspot.com/complain_images/")
storageReference2 = storage?.getReferenceFromUrl("gs://mypublicservice-98437.appspot.com/complain_videos/")

var pDialog = ProgressDialog(this)
pDialog.setTitle("Uploading...")
pDialog.setCancelable(true)
pDialog.show()
val childref = storageReference2?.child(videouri!!.lastPathSegment)
val childref2 = storageReference?.child(fp!!.lastPathSegment) // this is line 194
val uploadTask = childref?.putFile(videouri!!)
val uploadTask2 = childref2?.putFile(fp!!)

uploadTask2?.addOnSuccessListener {
    uploadTask?.addOnSuccessListener {

    }
    pDialog.dismiss()
    var builder = AlertDialog.Builder(this@ComplainActivity)
    builder.setTitle("Complain has been submitted !")
        /* .setPositiveButton("ok"){dialog, id:Int->
         finish()
     }*/
        .setNeutralButton("ok") { dialog, which ->

        }
        .create().show()
}

image of a larger piece of code

1 Ответ

0 голосов
/ 06 января 2019

Вы не должны использовать оператор утверждения (!!). Это самая большая причина ошибки. Вместо этого вы можете использовать оператор безопасного вызова (?) Или оператор Элвиса (?:).

Я думаю, вам нужно больше информации для Kotlin Null Safety. Вы можете посетить этот сайт Null Safety .

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