Giter VIP home page Giter VIP logo

student-bsu-by's Introduction

Клиент Android для личного кабинета студента БГУ

Скриншоты

Построено с использованием

  • UI - Jetpack Compose
  • Сеть - Retrofit2
  • База данных - Room
  • DI - Hilt
  • Параллелизм - Coroutines, Flow
  • Архитектура - MVVM

Установка и запуск проекта

Чтобы установить и запустить проект локально, следуйте этим шагам:

  1. Клонируйте репозиторий.
  2. Откройте проект в Android Studio.
  3. Соберите и запустите проект на устройстве Android или эмуляторе.

Убедитесь, что у вас установлены необходимые зависимости. Список зависимостей можно найти в файле build.gradle проекта.

Содействие проекту

Если вы хотите внести вклад в проект, следуйте этим рекомендациям:

  1. Форкните репозиторий.
  2. Создайте новую ветку для вашей функции или исправления ошибки.
  3. Внесите изменения и закоммитьте их в вашу ветку.
  4. Отправьте вашу ветку в ваш репозиторий-форк.
  5. Создайте pull request в основной репозиторий.

student-bsu-by's People

Contributors

alexzhirkevich avatar fabudi avatar geugenm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

student-bsu-by's Issues

Check is replacing has same functionality

After dependencies update backQueue parameter of NavController has been set to private. So temporary solution is to replace backQueue with currentBackStack.value.
Check if it is correct.

`Jsoup` Direct vulnerabilities: `CVE-2022-36033`. Vulnerabilities from dependencies: `CVE-2023-26049`, `CVE-2023-26048`

Solution: update jsoup package to 1.16.1

But some Kotlin code updates required

Error log:

student-bsu-by/app/src/main/java/github/alexzhirkevich/studentbsuby/repo/HostelRepository.kt:77:75 Expected 2 parameters of types Node!, Int
student-bsu-by/app/src/main/java/github/alexzhirkevich/studentbsuby/repo/HostelRepository.kt:77:75 Type mismatch: inferred type is () -> NodeFilter.FilterResult! but ((Node!, Int) -> NodeFilter.FilterResult!)! was expected
student-bsu-by/app/src/main/java/github/alexzhirkevich/studentbsuby/repo/HostelRepository.kt:77:77 Unresolved reference: it
student-bsu-by/app/src/main/java/github/alexzhirkevich/studentbsuby/repo/HostelRepository.kt:81:73 Expected 2 parameters of types Node!, Int
student-bsu-by/app/src/main/java/github/alexzhirkevich/studentbsuby/repo/HostelRepository.kt:81:73 Type mismatch: inferred type is () -> NodeFilter.FilterResult! but ((Node!, Int) -> NodeFilter.FilterResult!)! was expected
student-bsu-by/app/src/main/java/github/alexzhirkevich/studentbsuby/repo/HostelRepository.kt:81:76 Unresolved reference: it

Add BSU library page. Must include search, downloading and open options

This issue pertains to the development and integration of a new page for the BSU library within our project. The primary functionalities required on this page include:

  • Search Functionality: Users should be able to search for specific resources within the library.
  • Download Option: Users should have the ability to download resources directly from the library.
  • Open Option: Users should be able to open and view the resources directly from the library.

The reference for the library login page is https://elib.bsu.by/ldap-login.

The implementation of this feature should consider both usability and efficiency, ensuring that users can easily navigate and access the resources they need. It's also important to ensure the security and integrity of the resources during the download and open processes.

IllegalStateException: the number of children should be at least 2 after updating to 2.3.3+

After updating the me.onebone:toolbar-compose library from version 2.3.2 to 2.3.5, an IllegalStateException is thrown when navigating to the news section. The error message in the logcat is as follows:

FATAL EXCEPTION: main
...
java.lang.IllegalStateException: the number of children should be at least 2: toolbar, (at least one) body
...
[news_section_me.onebone-toolbar-compose_error_logcat.txt](https://github.com/geugenm/student-bsu-by/files/12605349/news_section_me.onebone-toolbar-compose_error_logcat.txt)

Steps to reproduce:

1. Update the me.onebone:toolbar-compose library to version 2.3.5.
2. Navigate to the news section.

Expected behavior: The news section should be displayed without any exceptions.

Additional information:

  • Using Jetpack Compose and Android Studio Giraffe 2022.3.1 Patch 1.

Logs:

news_section_me.onebone-toolbar-compose_error_logcat.txt

Missing classes detected while running R8.

When building in release with minifyEnabled (see) getting R8 error. Here is error log:

Missing class org.bouncycastle.jsse.BCSSLParameters (referenced from: void okhttp3.internal.platform.BouncyCastlePlatform.configureTlsExtensions(javax.net.ssl.SSLSocket, java.lang.String, java.util.List))
Missing class org.bouncycastle.jsse.BCSSLSocket (referenced from: void okhttp3.internal.platform.BouncyCastlePlatform.configureTlsExtensions(javax.net.ssl.SSLSocket, java.lang.String, java.util.List) and 1 other context)
Missing class org.bouncycastle.jsse.provider.BouncyCastleJsseProvider (referenced from: void okhttp3.internal.platform.BouncyCastlePlatform.<init>())
Missing class org.conscrypt.Conscrypt$Version (referenced from: boolean okhttp3.internal.platform.ConscryptPlatform$Companion.atLeastVersion(int, int, int))
Missing class org.conscrypt.Conscrypt (referenced from: boolean okhttp3.internal.platform.ConscryptPlatform$Companion.atLeastVersion(int, int, int) and 3 other contexts)
Missing class org.conscrypt.ConscryptHostnameVerifier (referenced from: okhttp3.internal.platform.ConscryptPlatform$configureTrustManager$1)
Missing class org.openjsse.javax.net.ssl.SSLParameters (referenced from: void okhttp3.internal.platform.OpenJSSEPlatform.configureTlsExtensions(javax.net.ssl.SSLSocket, java.lang.String, java.util.List))
Missing class org.openjsse.javax.net.ssl.SSLSocket (referenced from: void okhttp3.internal.platform.OpenJSSEPlatform.configureTlsExtensions(javax.net.ssl.SSLSocket, java.lang.String, java.util.List) and 1 other context)
Missing class org.openjsse.net.ssl.OpenJSSE (referenced from: void okhttp3.internal.platform.OpenJSSEPlatform.<init>())

The list of enabled options:

        release {
            // TODO: Fix R8 recurse problem
            postprocessing {
                removeUnusedCode true
                optimizeCode true
                obfuscate true
                removeUnusedResources true
            }

            minifyEnabled true
            shrinkResources true

            signingConfig signingConfigs.release
        }

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.