Potentials and challenges towards application of perovskite solar cells