Android Week 16

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/29

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

30 Terms

1
New cards

What is Gradle used for in Android devopment?

Gradle compiles, packages, and delivers APKs or AABs

2
New cards

What tasks does Gradle automate?

Gradle automates dependency resolution, code compilation, APK signing, and resource management

3
New cards

What are Build Variants in Android?

allow creating different app versions using build types and product flavors

4
New cards

What is a Debug Build Type in Android?

includes debug information for development

5
New cards

What is a Release Build Type in Android?

is optimized for production and often includes obfuscation

6
New cards

What are Product Flavors in Android?

create different versions of the app

7
New cards

What is ProGuard?

shrinks, obfuscates, and optimizes code to protect against reverse engineering

8
New cards

What is R8 in Android?

combines shrinking, optimization, and obfuscation into one step, replacing ProGuard

9
New cards

What is app signing in Android?

ensures APK/AAB integrity and is required by Google Play

10
New cards

How do you sign an Android build?

Generate a keystore, store credentials in gradle.properies, and reference it in build.gradle

11
New cards

What is the first step in the Play Store publishing flow?

Create a developer account by paying a $25 one time fee

12
New cards

What should be included in the store listing for Play Store?

App name, description, screenshots, icon, and feature graphic

13
New cards

What are the assets required for Play Store publishing?

Signed AAB, version name/code, content rating, and privacy policy URL

14
New cards

What are the rollout stages for an app on the Play Store?

Internal testing, alpha/beta tracks, and production release

15
New cards

What is the purpose of offine support in apps?

It improves use experience, retention and accessibility when the internet is unstable

16
New cards

Which technique are used for offline support in Jetpack Compose?

Room Database, WorkManager, caching APIs with Retrofit and DataStore

17
New cards

Why is app size optimization important?

It results in fast download/install, reduced strorage usage, and better performance on low-end devices

18
New cards

What techniques optimize app size?

Use Android App Bundle, remove unused resources, ProGuard/R8, vector drawables and modularization

19
New cards

What is accessiblity in Android apps?

ensures the app is usable by people with impairments

20
New cards

How does the Semantics API help in Jetpack Compose?

It adds accessiblity metadata to UI components

21
New cards

What is a content description in Jetpack Compose?

provides a spoken label for images and icons for screen renders

22
New cards

How does the Switch composable support accessibility?

It uses the semantics modifier for contenty descriptions like “Enable dark mode”

23
New cards

What versioning practions should you follow for Android Apps?

Use semantic versioning: major.minor.patch and increment versionCode on each release

24
New cards

What should be included in a release testing checklist?

Run unit/UI tests, test on real devices, and verify crash reports

25
New cards

How can you ensure app maintainability?

Keep dependenceies up-to-date, modularize apps, document build steps, and automate the release processH

26
New cards

How does Grandle assist with Android deployment?

Grandle automates build management, helping to create different versions of the app

27
New cards

How does ProGuard/R8 help in deployment?

shrinks and obfuscates code to protect it and reduce APK size

28
New cards

Why is app signing crucial for release builds?

It ensures the APK/AAB hasnt been tampered with and is required for Google Play uploads

29
New cards

What is the significance of offline support in Jetpack Compose?

Offline support makes the app more robust by enabling it to work without a stable internet connection

30
New cards

Why optimize app size?

lead to better user adoption, faster downloads, and better performance on low-end devices