I have answered a similar question in this SO post. My solution will save the image in the internal storage of the device inaccessible by other apps(on unrooted phones). Then we can simply decode the file and show it in imageview. It prevents TranscationTooLarge exception as you cannot exceed 1mb limit of passing bundle.