mirror of
https://github.com/kamranahmedse/developer-roadmap.git
synced 2026-03-12 17:51:53 +08:00
chore: sync content to repo (#9426)
Co-authored-by: kamranahmedse <4921183+kamranahmedse@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
513a90ccd3
commit
e53d47ff60
@@ -4,4 +4,4 @@ The **Activity Lifecycle** in Android represents a series of states or events th
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Activity Lifecycle](https://developer.android.com/guide/components/activities/activity-lifecycle)
|
||||
- [@official@Activity Lifecycle](https://developer.android.com/guide/components/activities/activity-lifecycle)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android Activity](https://developer.android.com/reference/android/app/Activity)
|
||||
- [@article@Mastering Android Activities](https://medium.com/deuk/mastering-the-android-activity-lifecycle-best-practices-1d10f15d060a)
|
||||
- [@article@Mastering Android Activities](https://medium.com/deuk/mastering-the-android-activity-lifecycle-best-practices-1d10f15d060a)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Google developers: Animations](https://developer.android.com/develop/ui/views/animations/overview)
|
||||
- [@video@Google developers: Animations](https://www.youtube.com/watch?v=N_x7SV3I3P0)
|
||||
- [@video@Google developers: Animations](https://www.youtube.com/watch?v=N_x7SV3I3P0)
|
||||
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
|
||||
|
||||
- [@official@Apollo Android](https://www.apollographql.com/docs/kotlin/v2/)
|
||||
- [@official@Apollo Docs](https://www.apollographql.com/docs/kotlin/)
|
||||
- [@opensource@apollographql/apollo-kotlin - GraphQL for Android](https://github.com/apollographql/apollo-kotlin)
|
||||
- [@opensource@apollographql/apollo-kotlin - GraphQL for Android](https://github.com/apollographql/apollo-kotlin)
|
||||
@@ -2,17 +2,17 @@
|
||||
|
||||
Android apps are primarily made up of five different types of components:
|
||||
|
||||
1. **Activities**: These are individual screens that a user can interact with. Any UI action like touching a button or swiping a screen will usually take place within an activity.
|
||||
|
||||
2. **Services**: Unlike activities, services run in the background and don't have a user interface. They’re used for repetitive or long running operations, like playing music or pulling in a feed of data from a server.
|
||||
|
||||
3. **Broadcast Receivers**: These are event listeners. The Android operating system uses them to respond to system-wide events.
|
||||
|
||||
4. **Content Providers**: They manage and share app data with other apps installed on the device. For security, data is not generally shared across apps.
|
||||
|
||||
5. **Intents**: These serve as messages or commands to the Android system. They're used to signal to the Android system that certain events have occurred.
|
||||
1. **Activities**: These are individual screens that a user can interact with. Any UI action like touching a button or swiping a screen will usually take place within an activity.
|
||||
|
||||
2. **Services**: Unlike activities, services run in the background and don't have a user interface. They’re used for repetitive or long running operations, like playing music or pulling in a feed of data from a server.
|
||||
|
||||
3. **Broadcast Receivers**: These are event listeners. The Android operating system uses them to respond to system-wide events.
|
||||
|
||||
4. **Content Providers**: They manage and share app data with other apps installed on the device. For security, data is not generally shared across apps.
|
||||
|
||||
5. **Intents**: These serve as messages or commands to the Android system. They're used to signal to the Android system that certain events have occurred.
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@App Fundamentals](https://developer.android.com/guide/components/fundamentals)
|
||||
- [@article@Android App Components](https://medium.com/android-hunger/android-app-components-activities-fragments-and-intents-ed7373455555)
|
||||
- [@article@Android App Components](https://medium.com/android-hunger/android-app-components-activities-fragments-and-intents-ed7373455555)
|
||||
@@ -4,4 +4,4 @@ App shortcuts in Android are designed to provide quick and convenient routes to
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@App Shortcuts](https://developer.android.com/guide/topics/ui/shortcuts)
|
||||
- [@official@App Shortcuts](https://developer.android.com/guide/topics/ui/shortcuts)
|
||||
@@ -5,4 +5,4 @@ Asynchronism in Android is a practice that defines operations, which can run ind
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Asynchronous Tasks](https://developer.android.com/guide/background)
|
||||
- [@article@Asynchronous Task Execution](https://medium.com/@cpvasani48/asynchronous-task-execution-in-android-a-guide-with-example-44732744f3b8)
|
||||
- [@article@Asynchronous Task Execution](https://medium.com/@cpvasani48/asynchronous-task-execution-in-android-a-guide-with-example-44732744f3b8)
|
||||
@@ -9,4 +9,4 @@ Firebase Authentication provides a full suite of capabilities even beyond authen
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Firebase Authentication](https://firebase.google.com/docs/auth)
|
||||
- [@official@Firebase Authentication: Android](https://firebase.google.com/docs/auth/android/start)
|
||||
- [@official@Firebase Authentication: Android](https://firebase.google.com/docs/auth/android/start)
|
||||
@@ -5,4 +5,4 @@ Kotlin is a concise, multi-platform, and fun language developed by JetBrains. Le
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Kotlin](https://kotlinlang.org/)
|
||||
- [@official@Kotlin Docs](https://kotlinlang.org/docs/getting-started.html)
|
||||
- [@official@Kotlin Docs](https://kotlinlang.org/docs/getting-started.html)
|
||||
@@ -6,5 +6,5 @@ Key concepts include `Classes`, which are blueprints from which objects are crea
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Object-Oriented Programming - Wikipedia](https://en.wikipedia.org/wiki/Object-oriented_programming)
|
||||
- [@official@OOP in Kotlin](https://developer.android.com/codelabs/basic-android-kotlin-compose-classes-and-objects)
|
||||
- [@official@Object-Oriented Programming - Wikipedia](https://en.wikipedia.org/wiki/Object-oriented_programming)
|
||||
- [@official@OOP in Kotlin](https://developer.android.com/codelabs/basic-android-kotlin-compose-classes-and-objects)
|
||||
@@ -4,5 +4,5 @@ Bitbucket is a web-based hosting service that is owned by Atlassian. Bitbucket u
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Bitbucket](https://bitbucket.org/)
|
||||
- [@article@Bitbucket for Developers](https://www.atlassian.com/software/bitbucket)
|
||||
- [@official@Bitbucket](https://bitbucket.org/)
|
||||
- [@article@Bitbucket for Developers](https://www.atlassian.com/software/bitbucket)
|
||||
@@ -8,4 +8,4 @@ Behavior attributes can be applied to standard bottom sheets in xml by setting t
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android developers: Bottom Sheets](https://developer.android.com/reference/com/google/android/material/bottomsheet/BottomSheetDialog)
|
||||
- [@official@Android developers: Bottom Sheets](https://developer.android.com/reference/com/google/android/material/bottomsheet/BottomSheetDialog)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Broadcast Receiver](https://developer.android.com/reference/android/content/BroadcastReceiver)
|
||||
- [@official@Broadcast Receiver](https://developer.android.com/reference/android/content/BroadcastReceiver)
|
||||
@@ -5,4 +5,4 @@ The **Builder Pattern** in Android is used to construct complex objects step by
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Builder Pattern](https://developer.android.com/kotlin/style-guide#builder-pattern)
|
||||
- [@article@Android Builder Pattern](https://medium.com/kayvan-kaseb/builder-design-pattern-in-android-a38dccb75485)
|
||||
- [@article@Android Builder Pattern](https://medium.com/kayvan-kaseb/builder-design-pattern-in-android-a38dccb75485)
|
||||
@@ -4,7 +4,7 @@ A `button` consists of text or an icon, or both, that communicates what action o
|
||||
|
||||
Buttons are UI widgets that allow users to interact with an application by tapping on them. A button typically consists of text, an icon, or a combination of both, and communicates what action will occur when the user taps it.
|
||||
|
||||
Learn more from the following resources:
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android Developers: Button](https://developer.android.com/develop/ui/views/components/button)
|
||||
- [@official@Create a Button - Android](https://developer.android.com/quick-guides/content/create-button)
|
||||
- [@official@Create a Button - Android](https://developer.android.com/quick-guides/content/create-button)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@opensource@ChuckerTeam/chucker - Chucker On GitHub](https://github.com/ChuckerTeam/chucker)
|
||||
- [@article@Network Traffic Inspection with Chucker](https://medium.com/tech-takeaways/simple-android-network-traffic-inspection-with-chucker-and-seismic-1e6162c51f64)
|
||||
- [@article@Network Traffic Inspection with Chucker](https://medium.com/tech-takeaways/simple-android-network-traffic-inspection-with-chucker-and-seismic-1e6162c51f64)
|
||||
@@ -5,4 +5,4 @@ Firebase Cloud Messaging (FCM) is a powerful, battery-efficient messaging servic
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Documentation](https://firebase.google.com/docs/cloud-messaging/android/client)
|
||||
- [@video@Firebase Cloud Messaging](https://www.youtube.com/watch?v=sioEY4tWmLI&list=PLl-K7zZEsYLkuHRCtHTpi6JYHka8oHLft)
|
||||
- [@video@Firebase Cloud Messaging](https://www.youtube.com/watch?v=sioEY4tWmLI&list=PLl-K7zZEsYLkuHRCtHTpi6JYHka8oHLft)
|
||||
@@ -4,4 +4,4 @@ Common Services are functional units or components provided by the Android syste
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Common Services](https://developer.android.com/guide/components/services)
|
||||
- [@official@Common Services](https://developer.android.com/guide/components/services)
|
||||
@@ -5,4 +5,4 @@ Lets you create large, complex layouts with a flat view hierarchy—no nested vi
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android: ConstraintLayout in XML](https://developer.android.com/develop/ui/views/layout/constraint-layout)
|
||||
- [@official@Android: ConstraintLayout in Compose](https://developer.android.com/develop/ui/compose/layouts/constraintlayout)
|
||||
- [@official@Android: ConstraintLayout in Compose](https://developer.android.com/develop/ui/compose/layouts/constraintlayout)
|
||||
@@ -4,4 +4,4 @@ A **Content Provider** in Android is a key component that allows applications to
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Content Provider](https://developer.android.com/guide/topics/providers/content-providers)
|
||||
- [@official@Content Provider](https://developer.android.com/guide/topics/providers/content-providers)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Coroutines](https://kotlinlang.org/docs/coroutines-overview.html)
|
||||
- [@official@Coroutines](https://kotlinlang.org/docs/coroutines-overview.html)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Crashlytics Documentation](https://firebase.google.com/docs/crashlytics/get-started?platform=android)
|
||||
- [@video@Firebase: Crashlytics](https://www.youtube.com/watch?v=LhjTAkifr6g)
|
||||
- [@video@Firebase: Crashlytics](https://www.youtube.com/watch?v=LhjTAkifr6g)
|
||||
@@ -2,6 +2,6 @@
|
||||
|
||||
The "Hello World" app is a simple project that you can build when you're getting started with Android development. It's often the first program that beginners learn to build in a new system. It's usually considered the simplest form of program that displays a message to the user - "Hello, World!" In Android, this involves creating a new project from the Android Studio and setting up the main activity. The main activity file is primarily written in Java or Kotlin where you can code for the display message, while the layout design view can be created in the XML file.
|
||||
|
||||
Visit the follow resources to learn more:
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Create Your First Android Application](https://developer.android.com/codelabs/basic-android-kotlin-compose-first-app)
|
||||
- [@official@Create Your First Android Application](https://developer.android.com/codelabs/basic-android-kotlin-compose-first-app)
|
||||
@@ -4,4 +4,4 @@ Dagger is a fully static, compile-time dependency injection framework for both J
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Dagger](https://dagger.dev/)
|
||||
- [@official@Dagger](https://dagger.dev/)
|
||||
@@ -6,4 +6,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@article@Data Structures and Algorithms in Android](https://medium.com/@pranamsharma.1997/importance-of-data-structure-and-algorithms-in-android-app-development-75eed9f73909)
|
||||
- [@article@Data Structures and Algorithms in Android](https://medium.com/@pranamsharma.1997/importance-of-data-structure-and-algorithms-in-android-app-development-75eed9f73909)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Documentation](https://developer.android.com/topic/libraries/architecture/datastore)
|
||||
- [@video@Introduction to DataStore](https://www.youtube.com/watch?v=9ws-cJzlJkU&list=PLWz5rJ2EKKc8to3Ere-ePuco69yBUmQ9C)
|
||||
- [@video@Introduction to DataStore](https://www.youtube.com/watch?v=9ws-cJzlJkU&list=PLWz5rJ2EKKc8to3Ere-ePuco69yBUmQ9C)
|
||||
@@ -4,4 +4,4 @@ Debugging is a critical step in the app development process. In Android developm
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Debugging](https://developer.android.com/studio/debug)
|
||||
- [@official@Debugging](https://developer.android.com/studio/debug)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Dependency Injection](https://developer.android.com/training/dependency-injection)
|
||||
- [@official@Dependency Injection](https://developer.android.com/training/dependency-injection)
|
||||
@@ -8,4 +8,4 @@ Visit the following resources to learn more:
|
||||
- [@article@Model-View-Controller (MVC)](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller)
|
||||
- [@article@Model-View-Presenter (MVP)](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93presenter)
|
||||
- [@article@Model-View-ViewModel (MVVM)](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93viewmodel)
|
||||
- [@article@Model-View-Intent (MVI)](https://www.raywenderlich.com/817602-mvi-architecture-for-android-tutorial-getting-started)
|
||||
- [@article@Model-View-Intent (MVI)](https://www.raywenderlich.com/817602-mvi-architecture-for-android-tutorial-getting-started)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Detekt](https://detekt.dev/)
|
||||
- [@opensource@Detekt: Static Code Analysis for Kotlin](https://github.com/detekt/detekt)
|
||||
- [@opensource@Detekt: Static Code Analysis for Kotlin](https://github.com/detekt/detekt)
|
||||
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android Studio](https://developer.android.com/studio)
|
||||
- [@official@Android Studio Documentation](https://developer.android.com/studio/intro)
|
||||
- [@official@Android Studio Plugins](https://developer.android.com/studio/intro/studio-plugins)
|
||||
- [@official@Android Studio Plugins](https://developer.android.com/studio/intro/studio-plugins)
|
||||
@@ -1,6 +1,5 @@
|
||||
# Dialogs
|
||||
|
||||
A `DialogFragment` is a special fragment subclass that is designed for creating and hosting dialogs. Although you don't need to host your **dialog** within a fragment, doing so lets the `FragmentManager` manage the state of the dialog and automatically restore the dialog when a configuration change occurs.
|
||||
Learn more from the following resources:
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android Developers: Dialogs](https://developer.android.com/guide/fragments/dialogs)
|
||||
- [@official@Android Developers: Dialogs](https://developer.android.com/guide/fragments/dialogs)
|
||||
@@ -4,4 +4,4 @@ Distribution in Android refers to the methods and channels you can use to get yo
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Google Play Developer Distribution](https://developer.android.com/distribute)
|
||||
- [@official@Google Play Developer Distribution](https://developer.android.com/distribute)
|
||||
@@ -5,4 +5,4 @@ The **Navigation Drawer** in Android is a sliding menu from the left that simpli
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android developers: DrawerLayout](https://developer.android.com/reference/androidx/drawerlayout/widget/DrawerLayout)
|
||||
- [@article@Navigate Drawer Tutorial](https://www.digitalocean.com/community/tutorials/android-navigation-drawer-example-tutorial)
|
||||
- [@article@Navigate Drawer Tutorial](https://www.digitalocean.com/community/tutorials/android-navigation-drawer-example-tutorial)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android developers: EditText](https://developer.android.com/reference/android/widget/EditText)
|
||||
- [@official@Android developers: EditText](https://developer.android.com/reference/android/widget/EditText)
|
||||
@@ -4,4 +4,4 @@ Espresso is a testing framework provided by Android to create UI tests for Andro
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Espresso](https://developer.android.com/training/testing/espresso)
|
||||
- [@official@Espresso](https://developer.android.com/training/testing/espresso)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Explicit Intents](https://developer.android.com/guide/components/intents-filters#explicit)
|
||||
- [@official@Explicit Intents](https://developer.android.com/guide/components/intents-filters#explicit)
|
||||
@@ -4,37 +4,35 @@ The **Factory Pattern** is part of the Creational Design Patterns. This pattern
|
||||
|
||||
Here is a basic example of the Factory Pattern:
|
||||
|
||||
```java
|
||||
public abstract class Animal {
|
||||
public abstract String makeSound();
|
||||
}
|
||||
|
||||
public class Dog extends Animal {
|
||||
@override
|
||||
public String makeSound() {
|
||||
return "Woof";
|
||||
public abstract class Animal {
|
||||
public abstract String makeSound();
|
||||
}
|
||||
}
|
||||
|
||||
public class Cat extends Animal {
|
||||
@override
|
||||
public String makeSound() {
|
||||
return "Meow";
|
||||
}
|
||||
}
|
||||
|
||||
public class AnimalFactory {
|
||||
public Animal createAnimal(String type) {
|
||||
if ("Dog".equals(type)) {
|
||||
return new Dog();
|
||||
} else if ("Cat".equals(type)) {
|
||||
return new Cat();
|
||||
|
||||
public class Dog extends Animal {
|
||||
@override
|
||||
public String makeSound() {
|
||||
return "Woof";
|
||||
}
|
||||
}
|
||||
|
||||
public class Cat extends Animal {
|
||||
@override
|
||||
public String makeSound() {
|
||||
return "Meow";
|
||||
}
|
||||
}
|
||||
|
||||
public class AnimalFactory {
|
||||
public Animal createAnimal(String type) {
|
||||
if ("Dog".equals(type)) {
|
||||
return new Dog();
|
||||
} else if ("Cat".equals(type)) {
|
||||
return new Cat();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android: Factory Pattern](https://developer.android.com/guide/components/intents-filters#factory)
|
||||
- [@official@Android: Factory Pattern](https://developer.android.com/guide/components/intents-filters#factory)
|
||||
@@ -5,4 +5,4 @@ The Android operating system uses a specific File System structure to store and
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android File System](https://developer.android.com/training/data-storage/)
|
||||
- [@article@Android File System](https://www.androidauthority.com/android-file-system-1010817/)
|
||||
- [@article@Android File System](https://www.androidauthority.com/android-file-system-1010817/)
|
||||
@@ -4,4 +4,4 @@ Firebase Distribution is a development tool within the Google Firebase suite tha
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Firebase Distribution](https://firebase.google.com/docs/app-distribution)
|
||||
- [@official@Firebase Distribution](https://firebase.google.com/docs/app-distribution)
|
||||
@@ -4,4 +4,4 @@ Firestore, often referred to as Firebase Firestore or Cloud Firestore, is a flex
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Firestore](https://firebase.google.com/docs/firestore)
|
||||
- [@official@Firestore](https://firebase.google.com/docs/firestore)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Flow](https://kotlinlang.org/docs/flow.html)
|
||||
- [@official@Flow: Coroutines](https://kotlinlang.org/docs/flow-coroutines.html)
|
||||
- [@official@Flow: Coroutines](https://kotlinlang.org/docs/flow-coroutines.html)
|
||||
@@ -4,4 +4,4 @@ A `Fragment` represents a reusable portion of your app's UI. A fragment defines
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android Developers: Fragments](https://developer.android.com/guide/fragments)
|
||||
- [@official@Android Developers: Fragments](https://developer.android.com/guide/fragments)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android developers: Frame Layout](https://developer.android.com/reference/android/widget/FrameLayout)
|
||||
- [@official@Android developers: Frame Layout](https://developer.android.com/reference/android/widget/FrameLayout)
|
||||
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
|
||||
|
||||
- [@roadmap@Git and GitHub Roadmap](https://roadmap.sh/git-github)
|
||||
- [@official@Git](https://git-scm.com/)
|
||||
- [@official@Git Documentation](https://git-scm.com/docs)
|
||||
- [@official@Git Documentation](https://git-scm.com/docs)
|
||||
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
|
||||
|
||||
- [@roadmap@Git and GitHub Roadmap](https://roadmap.sh/git-github)
|
||||
- [@official@GitHub](https://github.com/)
|
||||
- [@official@GitHub Documentation](https://docs.github.com/)
|
||||
- [@official@GitHub Documentation](https://docs.github.com/)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@GitLab](https://about.gitlab.com/)
|
||||
- [@official@GitLab Documentation](https://docs.gitlab.com/)
|
||||
- [@official@GitLab Documentation](https://docs.gitlab.com/)
|
||||
@@ -5,4 +5,4 @@ Google AdMob is a mobile advertising platform designed for app developers to mon
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Google AdMob](https://admob.google.com/home/)
|
||||
- [@official@Google AdMob Documentation](https://admob.google.com/home/get-started/)
|
||||
- [@official@Google AdMob Documentation](https://admob.google.com/home/get-started/)
|
||||
@@ -5,4 +5,4 @@ Google Maps is a crucial service on Android, offering powerful, user-friendly ma
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Google Maps](https://developers.google.com/maps/documentation/android-sdk/overview)
|
||||
- [@official@Google Maps Documentation](https://developers.google.com/maps/documentation/android-sdk/intro)
|
||||
- [@official@Google Maps Documentation](https://developers.google.com/maps/documentation/android-sdk/intro)
|
||||
@@ -1,8 +1,8 @@
|
||||
# Google Play Services
|
||||
|
||||
*Google Play Services* is a proprietary background service and API package for Android devices from Google. Operated by Google, the service provides core functionalities like authentication for Google services, synchronized contacts, access to all the latest user privacy settings, and higher quality, lower-powered location-based services. It also speeds up offline searches, provides more immersive maps, and improves gaming experiences. Google Play Services play a crucial role in the operation of various other applications, including those not developed by Google. Moreover, it improves the overall Android experience by speeding up offline searches, providing more detailed maps, enhancing gaming experiences, and more.
|
||||
_Google Play Services_ is a proprietary background service and API package for Android devices from Google. Operated by Google, the service provides core functionalities like authentication for Google services, synchronized contacts, access to all the latest user privacy settings, and higher quality, lower-powered location-based services. It also speeds up offline searches, provides more immersive maps, and improves gaming experiences. Google Play Services play a crucial role in the operation of various other applications, including those not developed by Google. Moreover, it improves the overall Android experience by speeding up offline searches, providing more detailed maps, enhancing gaming experiences, and more.
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Google Play Services](https://developer.android.com/google/play-services)
|
||||
- [@official@Google Play Services Documentation](https://developer.android.com/google/play-services/overview.html)
|
||||
- [@official@Google Play Services Documentation](https://developer.android.com/google/play-services/overview.html)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Google Play Store](https://play.google.com/store)
|
||||
- [@official@Google Play Store Documentation](https://developer.android.com/distribute/googleplay)
|
||||
- [@official@Google Play Store Documentation](https://developer.android.com/distribute/googleplay)
|
||||
@@ -4,4 +4,4 @@ Hilt is a dependency injection library for Android that reduces the boilerplate
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Hilt](https://developer.android.com/training/dependency-injection/hilt-android)
|
||||
- [@official@Hilt](https://developer.android.com/training/dependency-injection/hilt-android)
|
||||
@@ -4,4 +4,4 @@ Displays image resources, for example Bitmap or Drawable resources. ImageView is
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@article@Android Developers: ImageView](https://developer.android.com/reference/android/widget/ImageView)
|
||||
- [@article@Android Developers: ImageView](https://developer.android.com/reference/android/widget/ImageView)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Implicit Intents](https://developer.android.com/guide/components/intents-filters#implicit)
|
||||
- [@official@Implicit Intents](https://developer.android.com/guide/components/intents-filters#implicit)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Intent Filters](https://developer.android.com/guide/components/intents-filters)
|
||||
- [@official@Intent Filters](https://developer.android.com/guide/components/intents-filters)
|
||||
@@ -4,4 +4,4 @@ Intent in Android is a software mechanism used for late runtime binding between
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Intent](https://developer.android.com/reference/android/content/Intent)
|
||||
- [@official@Intent](https://developer.android.com/reference/android/content/Intent)
|
||||
@@ -5,4 +5,4 @@ In Android development, the concepts of "Interface" and "Navigation" are crucial
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android Developers: Interface](https://developer.android.com/guide/topics/ui/declaring-layout.html)
|
||||
- [@official@Android Developers: Navigation](https://developer.android.com/guide/navigation)
|
||||
- [@official@Android Developers: Navigation](https://developer.android.com/guide/navigation)
|
||||
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
|
||||
|
||||
- [@roadmap@Java Roadmap](https://roadmap.sh/java)
|
||||
- [@official@Java](https://www.oracle.com/java/technologies/javase-jdk11-downloads.html)
|
||||
- [@official@Java Documentation](https://docs.oracle.com/en/java/javase/11/docs/api/)
|
||||
- [@official@Java Documentation](https://docs.oracle.com/en/java/javase/11/docs/api/)
|
||||
@@ -4,4 +4,4 @@ Jetpack Benchmark is a library within the Android Jetpack Suite that allows deve
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Jetpack Benchmark](https://developer.android.com/studio/profile/benchmark)
|
||||
- [@official@Jetpack Benchmark](https://developer.android.com/studio/profile/benchmark)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Jetpack Compose](https://developer.android.com/jetpack/compose)
|
||||
- [@video@Jetpack Compose Crash Course](https://www.youtube.com/watch?v=6_wK_Ud8--0)
|
||||
- [@video@Jetpack Compose Crash Course](https://www.youtube.com/watch?v=6_wK_Ud8--0)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Kodein](https://insert-kodein.io/)
|
||||
- [@official@Kodein](https://insert-kodein.io/)
|
||||
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
|
||||
|
||||
- [@official@Koin](https://insert-koin.io)
|
||||
- [@official@Android Architecture Components](https://developer.android.com/topic/libraries/architecture/index.html)
|
||||
- [@officialKotlin Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html)
|
||||
- [@article@@officialKotlin Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html)
|
||||
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
|
||||
|
||||
- [@official@Kotlin](https://kotlinlang.org/)
|
||||
- [@official@Kotlin Documentation](https://kotlinlang.org/docs/home.html)
|
||||
- [@video@Learn Kotlin Programming for Beginners - Free Code Camp](https://youtu.be/EExSSotojVI?si=4VPW8ZHa2UMX0HH1)
|
||||
- [@video@Learn Kotlin Programming for Beginners - Free Code Camp](https://youtu.be/EExSSotojVI?si=4VPW8ZHa2UMX0HH1)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Ktlint](https://ktlint.github.io/)
|
||||
- [@opensource@Ktlint: Static Code Analysis for Kotlin](https://github.com/pinterest/ktlint)
|
||||
- [@opensource@Ktlint: Static Code Analysis for Kotlin](https://github.com/pinterest/ktlint)
|
||||
@@ -5,4 +5,4 @@ LeakCanary is a powerful open-source memory leak detection library for Android a
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Leak Canary](https://square.github.io/leakcanary/)
|
||||
- [@opensource@LeakCanary on GitHub](https://github.com/square/leakcanary)
|
||||
- [@opensource@LeakCanary on GitHub](https://github.com/square/leakcanary)
|
||||
@@ -6,4 +6,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Linear Layout](https://developer.android.com/develop/ui/views/layout/linear)
|
||||
- [@official@Linear Layout](https://developer.android.com/develop/ui/views/layout/linear)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Linting](https://developer.android.com/studio/write/lint)
|
||||
- [@official@Linting](https://developer.android.com/studio/write/lint)
|
||||
@@ -6,4 +6,4 @@ For a more modern, flexible, and performant approach to displaying lists, use `R
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@ListView](https://developer.android.com/reference/android/widget/ListView)
|
||||
- [@official@ListView](https://developer.android.com/reference/android/widget/ListView)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@LiveData](https://developer.android.com/topic/libraries/architecture/livedata)
|
||||
- [@official@LiveData](https://developer.android.com/topic/libraries/architecture/livedata)
|
||||
@@ -2,13 +2,14 @@
|
||||
|
||||
MVC or `Model View Controller` is a software design pattern commonly used for developing user interfaces that divides the related program logic into three interconnected components.
|
||||
|
||||
## Components:
|
||||
Components:
|
||||
-----------
|
||||
|
||||
- `Model`: The internal representations of information. This can often be an Interactor or UseCase
|
||||
- `View`: The interface that presents information to and accepts it from the user
|
||||
- `Controller`: The controller contains logic that updates the model and/or view in response to input from the users of the app.
|
||||
* `Model`: The internal representations of information. This can often be an Interactor or UseCase
|
||||
* `View`: The interface that presents information to and accepts it from the user
|
||||
* `Controller`: The controller contains logic that updates the model and/or view in response to input from the users of the app.
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@article@MVC](https://developer.mozilla.org/en-US/docs/Glossary/MVC)
|
||||
- [@article@Model View Controller](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller)
|
||||
- [@article@Model View Controller](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller)
|
||||
@@ -2,10 +2,10 @@
|
||||
|
||||
The **MVI** `Model-View-Intent` pattern is a reactive architectural pattern, similar to **MVVM** and **MVP**, focusing on immutability and handling states in unidirectional cycles. The data flow is unidirectional: Intents update the Model's state through the `ViewModel`, and then the View reacts to the new state. This ensures a clear and predictable cycle between logic and the interface.
|
||||
|
||||
- Model: Represents the UI state. It is immutable and contains all the necessary information to represent a screen.
|
||||
- View: Displays the UI state and receives the user's intentions.
|
||||
- Intent: The user's intentions trigger state updates, managed by the `ViewModel`.
|
||||
* Model: Represents the UI state. It is immutable and contains all the necessary information to represent a screen.
|
||||
* View: Displays the UI state and receives the user's intentions.
|
||||
* Intent: The user's intentions trigger state updates, managed by the `ViewModel`.
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@article@MVI with Kotlin](https://proandroiddev.com/mvi-architecture-with-kotlin-flows-and-channels-d36820b2028d)
|
||||
- [@article@MVI with Kotlin](https://proandroiddev.com/mvi-architecture-with-kotlin-flows-and-channels-d36820b2028d)
|
||||
@@ -1,13 +1,13 @@
|
||||
# MVP or Model View Presenter
|
||||
|
||||
The MVP `Model View Presenter` pattern is a derivative of the well-known MVC `Model View Controller` pattern and is one of the most popular patterns for organizing the presentation layer in Android applications.
|
||||
|
||||
MVP is divided into three components:
|
||||
|
||||
- `Model`: Responsible for managing the data input to the app. This can often be an Interactor or UseCase, handling the business logic and data operations.
|
||||
- `View`: Takes care of updating the graphical part of the application. It acts as a passive view, only receiving data and requesting actions to be performed.
|
||||
- `Presenter`: Handles all the logic related to the graphical interface that the View requests. It provides the View with the data it needs to display on the screen.
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@article@Model View Presenter](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93presenter)
|
||||
# MVP or Model View Presenter
|
||||
|
||||
The MVP `Model View Presenter` pattern is a derivative of the well-known MVC `Model View Controller` pattern and is one of the most popular patterns for organizing the presentation layer in Android applications.
|
||||
|
||||
MVP is divided into three components:
|
||||
|
||||
* `Model`: Responsible for managing the data input to the app. This can often be an Interactor or UseCase, handling the business logic and data operations.
|
||||
* `View`: Takes care of updating the graphical part of the application. It acts as a passive view, only receiving data and requesting actions to be performed.
|
||||
* `Presenter`: Handles all the logic related to the graphical interface that the View requests. It provides the View with the data it needs to display on the screen.
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@article@Model View Presenter](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93presenter)
|
||||
@@ -1,14 +1,14 @@
|
||||
# MVVM
|
||||
# MVVM
|
||||
|
||||
The `Model-View-ViewModel` (MVVM) pattern is a software architectural pattern commonly used in UI development. It is designed to separate the concerns of an application, making the code more modular, testable, and maintainable.
|
||||
|
||||
Components:
|
||||
|
||||
- `Model`: Refers either to a domain model, which represents real state content (an object-oriented approach), or to the data access layer, which represents content.
|
||||
- `View`: The view is the structure, layout, and appearance of what a user sees on the screen.
|
||||
- `View model`: The view model is an abstraction of the view exposing public properties and commands. The view model has been described as a state of the data in the model.
|
||||
* `Model`: Refers either to a domain model, which represents real state content (an object-oriented approach), or to the data access layer, which represents content.
|
||||
* `View`: The view is the structure, layout, and appearance of what a user sees on the screen.
|
||||
* `View model`: The view model is an abstraction of the view exposing public properties and commands. The view model has been described as a state of the data in the model.
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Android Developers: View Model](https://developer.android.com/topic/libraries/architecture/viewmodel)
|
||||
- [@article@Wikipedia](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93viewmodel)
|
||||
- [@article@Wikipedia](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93viewmodel)
|
||||
@@ -4,4 +4,4 @@ The **Navigation Components** are part of Android Jetpack and are designed to si
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Navigation Components](https://developer.android.com/guide/navigation)
|
||||
- [@official@Navigation Components](https://developer.android.com/guide/navigation)
|
||||
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
|
||||
|
||||
- [@official@Network](https://developer.android.com/guide/topics/connectivity)
|
||||
- [@official@ConnectivityManager](https://developer.android.com/reference/android/net/ConnectivityManager)
|
||||
- [@official@WifiManager](https://developer.android.com/reference/android/net/wifi/WifiManager)
|
||||
- [@official@WifiManager](https://developer.android.com/reference/android/net/wifi/WifiManager)
|
||||
@@ -5,4 +5,4 @@ The **Observer Pattern** is a software design pattern in which an object, known
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@article@Observer Pattern](https://en.wikipedia.org/wiki/Observer_pattern)
|
||||
- [@article@Observer Pattern](https://refactoring.guru/design-patterns/observer)
|
||||
- [@article@Observer Pattern](https://refactoring.guru/design-patterns/observer)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@OkHttp](https://square.github.io/okhttp/)
|
||||
- [@opensource@OkHttp on GitHub](https://github.com/square/okhttp)
|
||||
- [@opensource@OkHttp on GitHub](https://github.com/square/okhttp)
|
||||
@@ -7,4 +7,4 @@ Java is the original language used for Android development and is widely used, m
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Pick a Language](https://developer.android.com/studio/write/java8-support)
|
||||
- [@official@Kotlin vs Java](https://developer.android.com/kotlin)
|
||||
- [@official@Kotlin vs Java](https://developer.android.com/kotlin)
|
||||
@@ -0,0 +1,10 @@
|
||||
# RecyclerView
|
||||
|
||||
RecyclerView is the most commonly used and powerful list management tool in Android development. It makes it easy to efficiently display large sets of data. You supply the data and define how each item looks, and the RecyclerView library dynamically creates the elements when they're needed.
|
||||
|
||||
As the name implies, RecyclerView recycles those individual elements. When an item scrolls off the screen, RecyclerView doesn't destroy its view. Instead, RecyclerView reuses the view for new items that have scrolled onscreen. RecyclerView improves performance and your app's responsiveness, and it reduces power consumption.
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@RecyclerView Reference (Android Docs)](https://developer.android.com/reference/androidx/recyclerview/widget/RecyclerView)
|
||||
- [@official@Create Dynamic Lists with RecyclerView (Android Docs)](https://developer.android.com/develop/ui/views/layout/recyclerview)
|
||||
@@ -6,4 +6,4 @@ A **RelativeLayout** in Android is a type of ViewGroup that allows you to positi
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Relative Layout](https://developer.android.com/develop/ui/views/layout/relative)
|
||||
- [@official@Relative Layout](https://developer.android.com/develop/ui/views/layout/relative)
|
||||
@@ -5,4 +5,4 @@ Firebase Remote Config is a cloud service offered by Firebase. It lets you chang
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Remote Config](https://firebase.google.com/docs/remote-config/get-started?platform=android)
|
||||
- [@video@Getting Started with Remote Config](https://www.youtube.com/watch?v=pcnnbjAAIkI)
|
||||
- [@video@Getting Started with Remote Config](https://www.youtube.com/watch?v=pcnnbjAAIkI)
|
||||
@@ -4,4 +4,4 @@ The `Repository Pattern` separates the data sources from the rest of the applica
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@article@Repository Pattern](https://en.wikipedia.org/wiki/Repository_pattern)
|
||||
- [@article@Repository Pattern](https://en.wikipedia.org/wiki/Repository_pattern)
|
||||
@@ -5,4 +5,4 @@
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Room Database](https://developer.android.com/training/data-storage/room)
|
||||
- [@video@The Full Beginner's Guide for Room in Android](https://www.youtube.com/watch?v=bOd3wO0uFr8&t=10s)
|
||||
- [@video@The Full Beginner's Guide for Room in Android](https://www.youtube.com/watch?v=bOd3wO0uFr8&t=10s)
|
||||
@@ -4,4 +4,4 @@ RxJava, standing for Reactive Extensions for the JVM, is a library in the Java a
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@opensource@RxJava on GitHub](https://github.com/ReactiveX/RxJava)
|
||||
- [@opensource@RxJava on GitHub](https://github.com/ReactiveX/RxJava)
|
||||
@@ -4,4 +4,4 @@ RxJava (Reactive Extensions for the JVM) is a powerful library for composing asy
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@opensource@RxJava on GitHub](https://github.com/ReactiveX/RxJava)
|
||||
- [@opensource@RxJava on GitHub](https://github.com/ReactiveX/RxJava)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@opensource@ReactiveX/RxKotlin - RxKotlin on GitHub](https://github.com/ReactiveX/RxKotlin)
|
||||
- [@opensource@ReactiveX/RxKotlin - RxKotlin on GitHub](https://github.com/ReactiveX/RxKotlin)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@opensource@RxKotlin](https://github.com/ReactiveX/RxKotlin)
|
||||
- [@opensource@RxKotlin](https://github.com/ReactiveX/RxKotlin)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Services](https://developer.android.com/guide/components/services)
|
||||
- [@official@Services](https://developer.android.com/guide/components/services)
|
||||
@@ -5,4 +5,4 @@ Shared Preferences in Android are used to store data in key-value pairs. It work
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Shared Preferences Documentation](https://developer.android.com/training/data-storage/shared-preferences)
|
||||
- [@video@SharedPreferences in Android](https://www.youtube.com/watch?v=rJ3uwqko9Ew)
|
||||
- [@video@SharedPreferences in Android](https://www.youtube.com/watch?v=rJ3uwqko9Ew)
|
||||
@@ -4,4 +4,4 @@ A **Signed APK** is a version of your app that you prepare for distribution in t
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Signing Your App](https://developer.android.com/studio/publish/app-signing)
|
||||
- [@official@Signing Your App](https://developer.android.com/studio/publish/app-signing)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Activity Lifecycle](https://developer.android.com/guide/components/activities/activity-lifecycle)
|
||||
- [@official@Activity Lifecycle](https://developer.android.com/guide/components/activities/activity-lifecycle)
|
||||
@@ -4,4 +4,4 @@ On Android devices, storage refers to where your data such as apps, photos, vide
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Storage](https://developer.android.com/guide/topics/data/data-storage)
|
||||
- [@official@Storage](https://developer.android.com/guide/topics/data/data-storage)
|
||||
@@ -4,4 +4,4 @@ Tabs in Android Studio are a UI component used to organize content into multiple
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Material Tabs](https://developer.android.com/reference/com/google/android/material/tabs/package-summary)
|
||||
- [@official@Material Tabs](https://developer.android.com/reference/com/google/android/material/tabs/package-summary)
|
||||
@@ -4,4 +4,4 @@ The **tasks backstack** in Android refers to the way Android manages and arrange
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Tasks and Backstack](https://developer.android.com/guide/components/activities/tasks-and-back-stack)
|
||||
- [@official@Tasks and Backstack](https://developer.android.com/guide/components/activities/tasks-and-back-stack)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Testing](https://developer.android.com/training/testing)
|
||||
- [@official@Testing](https://developer.android.com/training/testing)
|
||||
@@ -4,4 +4,4 @@ TextView is a widget that is seen in every android application. This widget is u
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@article@TextView](https://developer.android.com/reference/android/widget/TextView)
|
||||
- [@article@TextView](https://developer.android.com/reference/android/widget/TextView)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@The Fundamentals](https://developer.android.com/guide/components/fundamentals)
|
||||
- [@official@The Fundamentals](https://developer.android.com/guide/components/fundamentals)
|
||||
@@ -4,4 +4,4 @@ In Android, a `Thread` is a concurrent unit of execution. It has its own call st
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Threads](https://developer.android.com/guide/components/processes-and-threads)
|
||||
- [@official@Threads](https://developer.android.com/guide/components/processes-and-threads)
|
||||
@@ -4,4 +4,4 @@
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@opensource@Timber on GitHub](https://github.com/JakeWharton/timber)
|
||||
- [@opensource@Timber on GitHub](https://github.com/JakeWharton/timber)
|
||||
@@ -4,4 +4,4 @@ A `toast` provides simple feedback about an operation in a small popup. It only
|
||||
|
||||
Visit the following resources to learn more:
|
||||
|
||||
- [@official@Toast](https://developer.android.com/guide/topics/ui/notifiers/toasts)
|
||||
- [@official@Toast](https://developer.android.com/guide/topics/ui/notifiers/toasts)
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user