This comprehensive guide to Android malware introduces current threats facing the world's most widely used operating system. After exploring the history of attacks seen in the wild since the time Android first launched, including several malware families previously absent from the literature, you'll practice static and dynamic approaches to analysing real malware specimens. Next, you'll examine the machine-learning techniques used to detect malicious apps, the types of classification models that defenders can use, and the various features of malware specimens that can become input to these models. You'll then adapt these machine-learning strategies to the identification of malware categories like banking trojans, ransomware, and SMS fraud. You'll learn: How historical Android malware can elevate your understanding of current threats; How to manually identify and analyse current Android malware using static and dynamic reverse-engineering tools; How machine-learning algorithms can analyse thousands of apps to detect malware at scale.