Isn't this method called on the UI thread most of the time. 'sleep()' might not be a good idea since it can potentially introduce huge jitters in rendering. Given that we are updating the inSampleSize, 'yield()' is sufficient. We can move this to sleep when we start processing properties on the JS thread. Also a 1sec sleep()/yield() time is excessive. If the garbage collector 'needs to run' it will kick in within a few ms with a higher priority. 200 ms should be fine.