What You Need to Know About Mobile Apps Before Creating Your Own