# Android

- [Android Studio Jdk Configuration](https://notes.shreyasjoshi.in/android/android/android-studio-jdk-configuration.md)
- [Building blocks](https://notes.shreyasjoshi.in/android/android/building-blocks.md)
- [Application class](https://notes.shreyasjoshi.in/android/android/building-blocks/application-class.md): What is the Application Class in Android?
- [Content Providers](https://notes.shreyasjoshi.in/android/android/building-blocks/content-providers.md)
- [Content Providers Vs AIDL/HIDL](https://notes.shreyasjoshi.in/android/android/building-blocks/content-providers/content-providers-vs-aidl-hidl.md)
- [Using content providers in App StartUp](https://notes.shreyasjoshi.in/android/android/building-blocks/content-providers/using-content-providers-in-app-startup.md)
- [Initialization Provider](https://notes.shreyasjoshi.in/android/android/building-blocks/content-providers/initialization-provider.md)
- [Broadcast Receivers](https://notes.shreyasjoshi.in/android/android/building-blocks/broadcast-receivers.md)
- [Static Broadcast Receivers](https://notes.shreyasjoshi.in/android/android/building-blocks/broadcast-receivers/static-broadcast-receivers.md): Understanding Static Broadcast Receivers in Android
- [How Broadcasts work?](https://notes.shreyasjoshi.in/android/android/building-blocks/broadcast-receivers/how-broadcasts-work.md)
- [Services in Android](https://notes.shreyasjoshi.in/android/android/building-blocks/services-in-android.md): https://developer.android.com/develop/background-work/services#Lifecycle
- [Foreground Service](https://notes.shreyasjoshi.in/android/android/building-blocks/services-in-android/foreground-service.md): It's a service that is noticeable to user
- [Unbounded foreground service Lifecycle](https://notes.shreyasjoshi.in/android/android/building-blocks/services-in-android/unbounded-foreground-service-lifecycle.md)
- [Background vs Foreground Service](https://notes.shreyasjoshi.in/android/android/building-blocks/services-in-android/background-vs-foreground-service.md)
- [Jetpack Compose](https://notes.shreyasjoshi.in/android/android/jetpack-compose.md)
- [Applying margins to Jetpack Compose](https://notes.shreyasjoshi.in/android/android/jetpack-compose/applying-margins-to-jetpack-compose.md)
- [Components](https://notes.shreyasjoshi.in/android/android/jetpack-compose/components.md)
- [Text(TextView) Composable](https://notes.shreyasjoshi.in/android/android/jetpack-compose/text-textview-composable.md)
- [Font Weight](https://notes.shreyasjoshi.in/android/android/jetpack-compose/text-textview-composable/font-weight.md)
- [Line Height](https://notes.shreyasjoshi.in/android/android/jetpack-compose/text-textview-composable/line-height.md)
- [Image Composable](https://notes.shreyasjoshi.in/android/android/jetpack-compose/image-composable.md)
- [Theming](https://notes.shreyasjoshi.in/android/android/jetpack-compose/theming.md)
- [permissions in android](https://notes.shreyasjoshi.in/android/android/permissions-in-android.md)
- [APK Installation Methods in Android 15](https://notes.shreyasjoshi.in/android/android/apk-installation-methods-in-android-15.md)
- [Run button in Android Studio](https://notes.shreyasjoshi.in/android/android/run-button-in-android-studio.md)
- [Testing in Android](https://notes.shreyasjoshi.in/android/android/testing-in-android.md)
- [Integration Tests](https://notes.shreyasjoshi.in/android/android/testing-in-android/integration-tests.md): ./gradlew connectedAndroidTest
- [ADB](https://notes.shreyasjoshi.in/android/android/adb.md)
- [dumpsys](https://notes.shreyasjoshi.in/android/android/adb/dumpsys.md): Let's dive into what dumpsys is, how it works, and its purpose, especially in relation to adb (Android Debug Bridge) commands.
- [See running services](https://notes.shreyasjoshi.in/android/android/adb/see-running-services.md)
- [verity in android](https://notes.shreyasjoshi.in/android/android/adb/verity-in-android.md)
- [logcat filter errors](https://notes.shreyasjoshi.in/android/android/adb/logcat-filter-errors.md)
- [adb shell pm](https://notes.shreyasjoshi.in/android/android/adb/adb-shell-pm.md)
- [apk installation issues](https://notes.shreyasjoshi.in/android/android/adb/apk-installation-issues.md)
- [app present in emulator or not?](https://notes.shreyasjoshi.in/android/android/adb/app-present-in-emulator-or-not.md)
- [version of apk?](https://notes.shreyasjoshi.in/android/android/adb/version-of-apk.md)
- [getprop vs dumpsys](https://notes.shreyasjoshi.in/android/android/adb/getprop-vs-dumpsys.md)
- [Process Vs Service](https://notes.shreyasjoshi.in/android/android/process-vs-service.md)
- [Gradle](https://notes.shreyasjoshi.in/android/android/gradle.md)
- [Gradle Wrapper](https://notes.shreyasjoshi.in/android/android/gradle/gradle-wrapper.md)
- [gradlew (wrapper script file)](https://notes.shreyasjoshi.in/android/android/gradle/gradle-wrapper/gradlew-wrapper-script-file.md)
- [gradle-wrapper.jar (Gradle Wrapper JAR File)](https://notes.shreyasjoshi.in/android/android/gradle/gradle-wrapper/gradle-wrapper.jar-gradle-wrapper-jar-file.md)
- [gradle-wrapper.properties](https://notes.shreyasjoshi.in/android/android/gradle/gradle-wrapper/gradle-wrapper.properties.md)
- [Intro to Gradle](https://notes.shreyasjoshi.in/android/android/gradle/intro-to-gradle.md)
- [Sequence of Gradle Build Process](https://notes.shreyasjoshi.in/android/android/gradle/sequence-of-gradle-build-process.md)
- [gradle init command](https://notes.shreyasjoshi.in/android/android/gradle/gradle-init-command.md)
- [Plugins](https://notes.shreyasjoshi.in/android/android/gradle/plugins.md)
- [Gradle Tasks](https://notes.shreyasjoshi.in/android/android/gradle/gradle-tasks.md)
- [Different Types of gradle Task creations](https://notes.shreyasjoshi.in/android/android/gradle/gradle-tasks/different-types-of-gradle-task-creations.md)
- [Gradle Task to find unique IT test names](https://notes.shreyasjoshi.in/android/android/gradle/gradle-tasks/gradle-task-to-find-unique-it-test-names.md)
- [Detailed Syntax Understanding](https://notes.shreyasjoshi.in/android/android/gradle/gradle-tasks/gradle-task-to-find-unique-it-test-names/detailed-syntax-understanding.md)
- [Summary](https://notes.shreyasjoshi.in/android/android/gradle/summary.md)
- [Android Gradle Plugin (agp)](https://notes.shreyasjoshi.in/android/android/gradle/android-gradle-plugin-agp.md)
- [Groovy DSL vs Kotlin DSL](https://notes.shreyasjoshi.in/android/android/gradle/groovy-dsl-vs-kotlin-dsl.md)
- [LiveData](https://notes.shreyasjoshi.in/android/android/livedata.md): Let’s dive deep into understanding LiveData in Android.
- [All about Intents](https://notes.shreyasjoshi.in/android/android/all-about-intents.md)
- [Intent vs Pending Intent](https://notes.shreyasjoshi.in/android/android/all-about-intents/intent-vs-pending-intent.md): In Android development, Intent and PendingIntent are two essential components for communication and action within the application, but they serve different purposes and are used in different contexts.
- [Pending Intent](https://notes.shreyasjoshi.in/android/android/all-about-intents/pending-intent.md)
- [PendingIntent.getService()](https://notes.shreyasjoshi.in/android/android/all-about-intents/pending-intent/pendingintent.getservice.md)
- [Intent Filters](https://notes.shreyasjoshi.in/android/android/all-about-intents/intent-filters.md)
- [Action, Category and Data](https://notes.shreyasjoshi.in/android/android/all-about-intents/intent-filters/action-category-and-data.md)
- [Companion Object](https://notes.shreyasjoshi.in/android/android/companion-object.md)
- [Notifications in Android](https://notes.shreyasjoshi.in/android/android/notifications-in-android.md)
- [MVC, MVP and MVVM in Android](https://notes.shreyasjoshi.in/android/android/mvc-mvp-and-mvvm-in-android.md): MVC, MVP, MVVM
- [MVVM vs Clean Architecture](https://notes.shreyasjoshi.in/android/android/mvc-mvp-and-mvvm-in-android/mvvm-vs-clean-architecture.md)
- [Dependency Injection](https://notes.shreyasjoshi.in/android/android/dependency-injection.md): Dependency Injection (DI) in General
- [Difference between Hilt and Dagger](https://notes.shreyasjoshi.in/android/android/dependency-injection/difference-between-hilt-and-dagger.md)
- [Hilt in a Nutshell](https://notes.shreyasjoshi.in/android/android/dependency-injection/hilt-in-a-nutshell.md)
- [@AndroidEntryPoint](https://notes.shreyasjoshi.in/android/android/dependency-injection/hilt-in-a-nutshell/androidentrypoint.md): Why Use @AndroidEntryPoint Annotation?
- [Adding background to Android Preference XML](https://notes.shreyasjoshi.in/android/android/adding-background-to-android-preference-xml.md)
- [User Manager](https://notes.shreyasjoshi.in/android/android/user-manager.md)
- [getSystemService(USER\_SERVICE)](https://notes.shreyasjoshi.in/android/android/getsystemservice-user_service.md)
- [View Model](https://notes.shreyasjoshi.in/android/android/view-model.md): What is ViewModel?
- [ViewModel without DI](https://notes.shreyasjoshi.in/android/android/view-model/viewmodel-without-di.md)
- [Jetpack ViewModel](https://notes.shreyasjoshi.in/android/android/view-model/jetpack-viewmodel.md)
- [ViewModel and Hilt](https://notes.shreyasjoshi.in/android/android/view-model/viewmodel-and-hilt.md)
- [Jetpack Compose](https://notes.shreyasjoshi.in/android/android/jetpack-compose-1.md)
- [Compose Empty Activity](https://notes.shreyasjoshi.in/android/android/jetpack-compose-1/compose-empty-activity.md)
- [Parcelable](https://notes.shreyasjoshi.in/android/android/parcelable.md)
- [Serialization in Android](https://notes.shreyasjoshi.in/android/android/serialization-in-android.md)
- [Delegate](https://notes.shreyasjoshi.in/android/android/delegate.md)
- [AppCompat in Android](https://notes.shreyasjoshi.in/android/android/appcompat-in-android.md)
- [.gitignore for Android](https://notes.shreyasjoshi.in/android/android/.gitignore-for-android.md)
- [Google Automotive Services(GAS)](https://notes.shreyasjoshi.in/android/android/google-automotive-services-gas.md)
- [$ANDROID\_HOME](https://notes.shreyasjoshi.in/android/android/usdandroid_home.md)
- [MockK mock creation methods](https://notes.shreyasjoshi.in/android/android/mockk-mock-creation-methods.md)
- [Kotlin](https://notes.shreyasjoshi.in/android/android/kotlin.md): Kotlin language learning
- [Style Guide](https://notes.shreyasjoshi.in/android/android/kotlin/style-guide.md): https://developer.android.com/kotlin/style-guide
- [Coding conventions](https://notes.shreyasjoshi.in/android/android/kotlin/style-guide/coding-conventions.md)
- [Commenting in your code](https://notes.shreyasjoshi.in/android/android/kotlin/style-guide/commenting-in-your-code.md)
- [Data Types](https://notes.shreyasjoshi.in/android/android/kotlin/data-types.md): Data types
- [Define versus use a variable](https://notes.shreyasjoshi.in/android/android/kotlin/data-types/define-versus-use-a-variable.md): Define and use variables
- [Update variables](https://notes.shreyasjoshi.in/android/android/kotlin/data-types/update-variables.md)
- [Unit Type](https://notes.shreyasjoshi.in/android/android/kotlin/data-types/unit-type.md)
- [val vs const](https://notes.shreyasjoshi.in/android/android/kotlin/data-types/val-vs-const.md)
- [Optional type (from Java)](https://notes.shreyasjoshi.in/android/android/kotlin/optional-type-from-java.md)
- [Functions in Kotlin](https://notes.shreyasjoshi.in/android/android/kotlin/functions-in-kotlin.md): Define and call a function
- [parameters](https://notes.shreyasjoshi.in/android/android/kotlin/functions-in-kotlin/parameters.md)
- [Named and Default Arguments](https://notes.shreyasjoshi.in/android/android/kotlin/functions-in-kotlin/named-and-default-arguments.md)
- [Lambda Functions](https://notes.shreyasjoshi.in/android/android/kotlin/lambda-functions.md)
- [Higher Order Functions](https://notes.shreyasjoshi.in/android/android/kotlin/higher-order-functions.md)
- [Scope Functions](https://notes.shreyasjoshi.in/android/android/kotlin/scope-functions.md)
- [Invoke Operator](https://notes.shreyasjoshi.in/android/android/kotlin/invoke-operator.md)
- [Data Classes](https://notes.shreyasjoshi.in/android/android/kotlin/data-classes.md): What are Data Classes in Kotlin?
- [Enum Classes](https://notes.shreyasjoshi.in/android/android/kotlin/enum-classes.md)
- [Sealed Classes](https://notes.shreyasjoshi.in/android/android/kotlin/sealed-classes.md)
- [Simple Kotlin example](https://notes.shreyasjoshi.in/android/android/kotlin/sealed-classes/simple-kotlin-example.md)
- [Summary of Kotlin Language](https://notes.shreyasjoshi.in/android/android/kotlin/summary-of-kotlin-language.md)
- [Delegation](https://notes.shreyasjoshi.in/android/android/kotlin/delegation.md)
- [lazy delegate](https://notes.shreyasjoshi.in/android/android/kotlin/delegation/lazy-delegate.md)
- [Pair, Tripple and Quadruple](https://notes.shreyasjoshi.in/android/android/kotlin/pair-tripple-and-quadruple.md)
- [SOLID Principles Overview](https://notes.shreyasjoshi.in/android/android/kotlin/solid-principles-overview.md)
- [Software Architecture](https://notes.shreyasjoshi.in/android/android/software-architecture.md)
- [UML Origin](https://notes.shreyasjoshi.in/android/android/software-architecture/uml-origin.md)
- [Component Diagram](https://notes.shreyasjoshi.in/android/android/software-architecture/component-diagram.md)
- [Class Diagram](https://notes.shreyasjoshi.in/android/android/software-architecture/class-diagram.md)
- [Relationships](https://notes.shreyasjoshi.in/android/android/software-architecture/class-diagram/relationships.md)
- [Association](https://notes.shreyasjoshi.in/android/android/software-architecture/class-diagram/relationships/association.md)
- [4 Cardinalities of Association](https://notes.shreyasjoshi.in/android/android/software-architecture/class-diagram/relationships/association/4-cardinalities-of-association.md)
- [Aggregation](https://notes.shreyasjoshi.in/android/android/software-architecture/class-diagram/relationships/aggregation.md)
- [Association and Aggregation](https://notes.shreyasjoshi.in/android/android/software-architecture/association-and-aggregation.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://notes.shreyasjoshi.in/android/android.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
