add async image loader and add camera permission to do qrcode scan