Android application development
Before we get into reverse engineering, it is important to understand how the forward-engineering process happens and how an application is developed. In order to create an application, the developer chooses a programming language according to the operating system on which the application is supposed to run. For example, in the case of Android applications, generally, a developer may choose to develop their application using Java, Kotlin, or C++ (using other languages is also possible). Kotlin is the official language for Android applications. Android Studio is the official development environment for building Android apps. We already used Android Studio in the Android application fundamentals section of Chapter 1, Basics of Reverse Engineering – Understanding the Structure of Mobile Apps. Android Studio contains a comprehensive set of development tools, such as Android Debug Bridge (ADB), fastboot, and the Native Development Kit (NDK). The Android...