설명 없음

Nikita Ageev 656433fb9e catalog needs to redesign btns. do some logic with them. Analyzes is almost done 10 달 전
.idea bf1de277d7 gets the catalog item from api 10 달 전
app 656433fb9e catalog needs to redesign btns. do some logic with them. Analyzes is almost done 10 달 전
gradle bd593e9d8d init project 1 년 전
.gitignore b42767136e updated .gitignore 10 달 전
build.gradle.kts bf1de277d7 gets the catalog item from api 10 달 전
gradle.properties 6ddc8d894a idk how write self numpad, need example of implement 11 달 전
gradlew bd593e9d8d init project 1 년 전
gradlew.bat bd593e9d8d init project 1 년 전
readme.md b7657e0b64 Updated readme and adds comments in code 10 달 전
settings.gradle.kts 6ddc8d894a idk how write self numpad, need example of implement 11 달 전

readme.md

SmartLab

SmartLab - информационная система для частных поликлиник. Используя данное приложение можно как заказывать различные тесты и анализы, так и увидеть все результаты ранее сделанных тестов или анализов в одном приложении.

Является хорошим примером для построения своих android приложений с использованием "XML layouts to build native UI". То есть более старой реализации android приложений.

Как скачать данное решение

Gradle build файл содержит в себе следующий код:

 compileSdk = 34

    defaultConfig {
        applicationId = "com.example.smartlab"
        minSdk = 30
        targetSdk = 34
        versionCode = 1
        versionName = "1.0"

        testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
    }

Это означает, что разработанное приложение может быть запущено на устройствах Android 11 и выше.

Чтобы установить данный проект, вам нужно иметь Android Studio на вашем устройстве, при запуске проекта необходимо убедиться, что у вас установлен 30 API или выше**.

Также иногда стоит синхронизировать gradle.kts файлы и запустить AGP инспекцию, если у вас версия более ранее или поздняя чем "Android Studio Giraffe".

Что реализовано в данном проекте

Встречающие пользователя элементы

Элементы встречающие пользователя "Splash Screen" и "OnBoarding/Walkthrough Screen".

  • Splash Screen - всплывающий экран заставки, реализован через специальное API, которое ввели начиная с Android 12.
  • OnBoarding/Walkthrough Screen - экран первоначальной загрузки, который запускается только в том случае, если вход в приложение является первым.

В ходе реализации нужно было придумать изюминку здесь это - LottieAnimation. Это анимации, которые могут быть представлены как в "RAW", так и в "JSON-OBJECT" формате, они могут быть использованы в браузере и мобильных приложениях. Некоторые анимации являются полностью бесплатными, что даёт полное право использовать их в своих решениях (как здесь).

Навигационные элементы

В контексте данного решения был использован навигационный компонент с использованием множества фрагментов.

Навигация

Между некоторыми аргумента передаются аргументы. К примеру, с "AuthFragment" в "EmailCodeFragment" передаётся почта, чтобы отправлять разные запросы к API.

Список реализованного

Здесь все то, что присутствует в проекте (BL - Business Logic):

  • Bindings (Activity & Fragment)
  • API Models
  • Validation of code from email
  • RegEx
  • Bottom Navigation

  • Fragments

    • Auth with BL
    • EmailCode with BL
    • OnBoarding with BL
    • ProfileCardCreate with BL
    • PassCode Creation with BL
  • Preference Manager

    • Walkthrough Screens
    • Pass Code
    • JWT Token
  • API manipulations

    • Send Code to email
    • Take JWT
    • Create (post) Profile Card

Что не реализовано

Не хватило времени на реализацию всех окон внутри Bottom Navigation (all in figma). То есть нету:

  • Обновления данных личного кабинета;
  • Сохранение фотографии внутри личного кабинета, как и нет картинки заглушки;
  • Вытягивание из API:
    • Акций и новостей;
    • Анализов;
    • Данных для Modal Bottom Sheet;
  • Корзины и её бизнес логики;
  • Оформление заказа.

Ссылки

Макет приложения - Figma

GitHub profile - Nanech

Gogs repository

API