My QA Projects

QA Projects I was involded.

View on GitHub

Flashing

installing from your computer files (APK, SDK and so on) onto DUT APK: The final product that users install on their Android devices ( tools and blueprints). SDK: The tools and resources that developers use to build the APK (complete, functional structure ).

APK (Android Package Kit)

contains all the code, resources (images, sounds, etc.), and data needed to run the app on an Android device. Analogy: executable file for Windows or macOS. Usage: When you download and install an app from the Google Play Store, you’re essentially downloading and installing an APK file.

Key Characteristics

SDK (Software Development Kit):

set of tools, libraries, documentation, and sample code that developers use to create Android apps. Analogy: toolbox for building a house. It provides the tools, instructions, and materials necessary to construct the application. Usage: Developers use the Android SDK to write code, design the UI, test their apps, and ultimately create APK files to distribute.

Key Characteristics: Development Tools: It includes tools like the Android Studio IDE, compilers, emulators, and debuggers. Libraries: It contains pre-written code (libraries) that developers can use to perform common tasks. Documentation: The SDK includes comprehensive documentation to help developers understand how to use its tools and libraries. Sample Code: It offers sample code to illustrate how to implement various functionalities.

You flash the DUT from your laptop via terminal with ADB.

ADB (Android Debug Bridge)

command-line tool to communicate with and control Android devices from your computer.

Software Installation

Install apps from your computer (outside the Play Store).

adb devices
# and press Enter.
# or 
aae toolbox
adb install -r -d autoembedded.carassistant.arm64-v8a.blablabla_RC00.apk

Debugging App Issues - logcat

Identify and troubleshoot problems on your Android device.

view the system logs of your Android device

  • Kernel: Messages related to the core operating system.
  • System Services: Logs from services like Bluetooth, Wi-Fi, and GPS.
  • Applications: Messages generated by your apps, including errors, warnings, and debug information.
# Displays log messages from your device.
adb logcat
adb logcat -c

adb logcat > languageChange01.txt
ls languageChange01.txt

test queries
^C
adb bugreport
aae toolbox config experimental enable
aae device screen

File Transfer

Transfer files between your computer and your device.

#Push a file from your computer to your device.
adb push <local_file> <remote_path>
# Pull a file from your device to your computer.
adb pull <remote_path> <local_path>

Shell Access

Execute commands on your device’s Linux shell.

# Opens a shell on your device, allowing you to execute Linux commands.
adb shell
adb shell <command>
# Executes a command directly on your device 
# to list files in the SD card directory
adb shell ls /sdcard 

Screen Capture:

Capture screenshots of your device’s screen.

#capture screenshot
adb wait-for-usb-device shell screencap /sdcard screen.png

./adb exec-out screencap -p > $directory/Today_${lang_argument}_${i}.png 

# Capture a screenshot and save it to the device's SD card.
adb shell screencap -p /sdcard/screenshot.png 

# Pull screenshots
adb pull /sdcard/screen.png

# Delete screenhots?

Device Management

Manage and control multiple connected Android devices.

Testing

Run automated tests on your device.

Other Useful Commands

# Reboots your device.
adb reboot 

# Reboots your device into recovery mode.
adb reboot recovery