2012-01-16 2 views
0

Я создаю приложение, в котором первое действие вызывает второе действие для результатов, то есть startActivityForResult(intent,SELECT_FILE);, но при переходе на вторую активность, если я нажму кнопку «Назад» моего эмулятора, он выдает исключение:Исключение при нажатии кнопки возврата эмулятора Android

java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=0, data=null} to activity {com.upload/com.upload.FileUploadActivity}: java.lang.NullPointerException

что мне делать ..?

Thankx

+0

вставьте больше кода из файла FileUploadActivity, где вы установите результат –

ответ

0

При запуске новой деятельности, используя startActivityForResult результат, как ожидается, когда закончится новый вид деятельности. Обычно новая активность завершается, и результат определяется в методе finish().

Что я подозреваю, так это то, что вы не обрабатываете нажатие кнопки «Назад» в новом действии, и поэтому результат не генерируется. Затем, когда 'onActivityResult() is called in the old activity there is no activity to process and you are getting the NullPointerException`.

Вы можете решить эту проблему двумя способами.

В новом действии Слушайте кнопку «Назад», нажмите и при нажатии на вызов finish(), чтобы настроить результат. Или в старой активности проверьте результат, чтобы убедиться, что он действителен и не является нулевым (вы все равно должны это делать)

Смежные вопросы