Fix bugs, support lower api level(I have tested Android 2.3 on Genymotion)