Spyware Reverse Engineering
Android App Structure

Tools
Android Permissions
Please reference this permissions overview â for descriptions of the listed permissions that are considered dangerous.
READ_CALENDAR
WRITE_CALENDAR
READ_CALL_LOG
WRITE_CALL_LOG
PROCESS_OUTGOING_CALLS
CAMERA
READ_CONTACTS
WRITE_CONTACTS
GET_ACCOUNTS
ACCESS_FINE_LOCATION
ACCESS_COARSE_LOCATION
RECORD_AUDIO
READ_PHONE_STATE
READ_PHONE_NUMBERS
CALL_PHONE
ANSWER_PHONE_CALLS
ADD_VOICEMAIL
USE_SIP
BODY_SENSORS
SEND_SMS
RECEIVE_SMS
READ_SMS
RECEIVE_WAP_PUSH
RECEIVE_MMS
READ_EXTERNAL_STORAGE
WRITE_EXTERNAL_STORAGE
Important Android Components
Activities A key component of most Android apps, activities can handle unexpected changes, device rotation, and data saving
Services Run in the background of an app to perform long-running tasks without a user interface
Broadcast receivers Respond to system-wide broadcast announcements, known as Intents, to perform functions like alerting the user when the battery is low
Intents A frequently used component that allows users to call other app components, activities, or applications on the phone
Fragments A reusable portion of an app's UI that manages its own layout, lifecycle, and input events
Lists A key UI element that represents a range of information
RecyclerView A commonly used Android component for displaying a list of items
Android architecture The foundation of the Android mobile operating system, which is essential for creating high-quality and scalable apps
Jetpack Compose A tool that simplifies the process of building complex UIs, saving developers time and reducing errors
Android Services and Receivers
Services
Services are critical application components that can perform long-time operations. For example, Spotify services can play music in the background even if the app is closed.
Broadcast Receivers
They respond to broadcast messages from another application or system, for example, a low battery message, or a no wifi connection message. They can respond to these types of messages. They can receive messages from other apps. They have various types, such as SMS broadcast receiver, Battery state, etc. You can create your own custom broadcast receiver.
Decompiling an APK
Install Jadx Using
sudo apt install jadx

REFERENCES
Last updated
Was this helpful?