the-dise / Mir-Pay-Wallet

Mir Pay Wallet app for Wear OS
GNU General Public License v3.0
105 stars 4 forks source link

Методы улучшения приложения #1

Closed mxkmn closed 6 months ago

mxkmn commented 6 months ago
  1. Снижение занимаемого места при помощи оптимизаций.

Для оптимизаций во время сборки приложения нужно юзать:

release {
    isMinifyEnabled = true
    isShrinkResources = true
    proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"))
}

P.s. в Groovy синтаксис (даже самих переменных) немного отличается. А ещё нужно проверить в консоли firebase адекватность работы логгирования - если вдруг вместо номера строки с Exception будут выдаваться номера 0 или 1, то в дополнительном proguard-rules.pro нужно будет прописать:

-keepattributes LineNumberTable,SourceFile
-renamesourcefileattribute SourceFile
  1. Выпилить два типа построения интерфейса.

Юзай либо Compose, либо XML. Причём если XML, то избавься от databinding и переходи на viewbinding.

Но поскольку Compose топ и смысла в XML уже почти нет, то переходить лучше на него. Причём получится избавиться от классов биндига и вьюмодели - всё станет возможно через одну лишь mainactivity, даже с учётом интерфейса и логики всё легко поместится в менее чем 100 строк.

  1. Избавление от лишних ресурсов.

Поскольку minsdk 26, можно сносить все иконки приложения в папках mipmap-*dpi.

ic_launcher_round.xml аналогичен ic_launcher.xml - его тоже нужно снести.

ic_launcher_background.xml можно заменить на простой цвет. <background android:drawable="@color/white"/>

  1. the Google Sans font can only be used in Google products by Google

Этот шрифт не является свободным. У телефонов pixel этот шрифт как-то программно можно достать через api, наверное для часов та же тема. Для остальных часов лучше юзать стандартный шрифт.

Пока что хватит)