Что значит "перестаёт работать"? Просто ничего не происходит? Или кидается исключение? Что за коллекция uploadFile? Почему не флашится стрим, в который пишется файл?
con_: Плохая аналогия - плохо написанный js-код, валяющийся на локалхосте, людей не убивает.
По своему опыту говорю - после того, как хоть немного освоена база, нужно писать код, а не читать дальше. Теоретическая база - это хорошо, но когда она растёт быстрее практических навыков, толку от нее нет. Здесь каким начитанным бы ты ни был, всё равно в итоге лезешь в гугл за решением проблем.
В общем, решил переписать всё по гайду с developer.android.com, без использования отдельного фрагмента для drawer'a. Удивительным образом, выглядеть всё стало так, как надо.