Pull to refresh
12
0
Махач Имангазалиев @ImangazalievM

Android-программист

Send message

Памятка по жизненному циклу Android — часть I. Отдельные Activity

Reading time3 min
Views15K

Android спроектирован так, чтобы использование приложения пользователем было максимально интуитивным. Чтобы обеспечить такое взаимодействие с пользователем, вы должны знать, как управлять жизненными циклами (ЖЦ) компонентов. Компонентом может быть Activity, Fragment, Service, класс Application и даже сам процесс приложения. Компонент имеет жизненный цикл, в течение которого он проходит через различные состояния. Всякий раз, когда происходит переход, система уведомляет вас об этом при помощи методов жизненного цикла. В этой статье мы разберем то, как устроен ЖЦ Activity на основе нескольких распространенных сценариев использования.

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments0

Погружение в JetPack Compose. Часть 1/2

Reading time9 min
Views21K

Ожидания по поводу разработки пользовательского интерфейса выросли. Сегодня мы не можем создать приложение и удовлетворить потребности пользователя, не имея отточенного пользовательского интерфейса, включая анимацию и движение UI-элементов. Этих требований не существовало при создании текущего UI Toolkit-а системы Android. Чтобы решить технические проблемы быстрого и эффективного создания безупречного пользовательского интерфейса, мы представили Jetpack Compose - современный набор инструментов для создания UI, который помогает разработчикам приложений добиться успеха на этом новом поприще.

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments6

Кастомный ItemDecoration для RecyclerView

Reading time6 min
Views9.1K

Как-то раз мне нужно было создать собственный ItemDecoration, и я обнаружил, что в Интернете. почти нет ответов на этот вопрос. Надеюсь, что эта стать будет кому-нибудь полезна.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments2

CTRL + G — хоткей, полностью изменивший принцип моей работы

Reading time2 min
Views43K


В этой статье я расскажу об одном из очень важных и нужных хоткеев в Android Studio, который позволит вам значительно повысить вашу производительность. Кейсы, описанные здесь, встречаются наиболее часто при рефакторинге уже готового кода, поэтому рекомендую досконально изучить статью и выучить описанные хоткеи.

Внимание: Данный пост является очень вольным переводом этой статьи. Целью ставилось донести смысл текста, поэтому в некоторых местах текст может не совпадать с оригиналом.
Читать дальше →
Total votes 49: ↑31 and ↓18+13
Comments39

Scripto — замена стандартному JavaScriptInterface

Reading time6 min
Views7.5K


Приветствую пользователей Хабра. Наверное, многие из более менее опытных пользователей слышали про JavaScriptInterface — «мостик» между Java и JavaScript, при помощи которого можно вызывать Java методы. У JavaScriptInterface есть несколько довольно значимых недостатков:

1) Методы вызываются не в UI-потоке, а в специальном потоке Java Bridge, который нельзя забивать, иначе WebView перестанет отвечать.
2) При обращении к UI из методов, вызванных при помощи JavaScriptInterface, ничего не происходит, что может привести к нескольким часам дебага у незнающих разработчиков. Как решение, приходится использовать метод runOnUi или хендлеры.
3) Невозможно передавать пользовательские типы данных

Вызов JS-функций стандартным способом происходит так:

myWebView.loadUrl("myFunction('Hello World!')");


Минус данного подхода в том, что вызов функции — это, фактически, строка, и при передаче аргументов всех их нужно конвертировать в String.

Столкнувшись с этими проблемами в одном из своих проектов, в котором Java и JavaScript взаимодействуют очень тесно, я решил написать библиотеку облегчающую вызовы JS из Java и наоборот.
Читать дальше →
Total votes 22: ↑18 and ↓4+14
Comments8

Пишем MVP приложение на Kotlin под Android

Reading time19 min
Views108K


Разработка приложений на Kotlin под Android набирает популярность среди разработчиков, однако статей в русскоязычном сегменте Интернета довольно мало. Я решил немного подправить ситуацию, и написать туториал по разработке приложения на Kotlin. Мы напишем полноценное приложение с использованием всех трендовых библиотек (кроме RxJava) в мире Android-разработки. В конце у нас должно получиться расширяемое и легко тестируемое приложение (сами тесты мы писать не будем).
Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments24

Реализация списка использованных библиотек в Android приложении. Попытка №2

Reading time2 min
Views8.1K
Совсем недавно наткнулся на статью на Хабре о том, как реализовать диалоговое окно со списком использованных библиотек. Мне предложенный вариант показался слишком сложным, да и сам список смотрелся криво. В связи с этим я решил поделиться более простым и элегантным способом реализации данного функционала.
Читать дальше →
Total votes 7: ↑6 and ↓1+5
Comments4

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity