Skip to content

Advanced Android techniques: canvas, DataStore, custom views, Hilt, animations, Retrofit, and more.

Notifications You must be signed in to change notification settings

MehdiSekoba/potea

Repository files navigation

Advanced Android Development Techniques

This repository demonstrates a variety of advanced techniques in Android development, including canvas text highlighting, data storage, custom UI components, and more.

ScreenShots

Product Screen Product Detail Screen Profile Screen
Cart Screen Search Screen
Edit Profile Screen Splash Screen

The rest of the features are at the bottom of the video viewing page

Features

  1. Canvas Text Highlighting

    • Techniques for highlighting specific parts of text using canvas.
  2. Data Storage Handling

    • Efficient methods for working with DataStore for data persistence.
  3. Custom Toast Notifications

    • Creating custom toast notifications with enhanced features compared to the default implementation.
  4. EventBus with SharedFlow

    • Utilizing EventBus with Kotlin's SharedFlow for efficient event handling.
  5. Dependency Injection with Hilt

    • Implementing dependency injection using Hilt for better management of dependencies.
  6. Custom Loading Button

    • Designing a custom loading indicator using MaterialButton.
  7. Useful Extensions

    • A collection of important and practical Kotlin extensions for Android development.
  8. Advanced Animations

    • Implementing advanced animations to enhance the user interface.
  9. SpannableString for Text Styling

    • Using SpannableString to change the color of parts of the text.
  10. Custom Views

    • Techniques for creating and working with custom views.
  11. Permission Handling

    • Best practices for handling runtime permissions in Android.
  12. Global Font Application with Calligraphy

    • Applying custom fonts to all text across the application using Calligraphy.
  13. OTP Verification for Email

    • Implementing OTP functionality for email verification.
  14. Image Upload with Retrofit

    • Uploading images using Retrofit.
  15. Custom Feedback Dialogs

    • Creating custom dialogs for collecting user feedback.
  16. Expandable and Collapsible Views

    • Techniques for creating views that can expand and collapse.
  17. Working with AAChart Library

    • Implementing powerful charting capabilities using the AAChart library.
  18. Material 3 Styling

    • Applying various styles from Material 3 to enhance the application's appearance.
  19. Internet Connectivity Check

    • Checking internet connectivity using BroadcastReceiver.

Architecture

  • MVVM Architecture
    • This project follows the MVVM (Model-View-ViewModel) architecture pattern for a clear separation of concerns and better testability.

      Video

IMAGE ALT TEXT HERE

Support

This project includes many more capabilities. Please support the project by giving it a star and forking it.