Size: a a a

AndroidDev :: Разработка. It's Android time now!

2020 February 05

A

Anna in AndroidDev :: Разработка. It's Android time now!
#вакансия #android #java #kotlin #офис #москва
м.Бауманская, полная занятость
Белая з/п от 140.000 до 200.000 руб. на руки, компенсация проезда для переезда иногородним
Android developer

Мы — команда разработки Level.Travel, сложного продукта в сфере путешествий. За последние 8 лет мы с нуля создали и продолжаем развивать решение для онлайн-продажи путешествий. Нашу платформу используют лидеры рынка – Тинькофф Банк, OneTwoTrip, Сбербанк, TripAdvisor, Kayak, АК Барс Банк, Евросеть и многие другие. Компания Level.Travel является резидентом Инновационного центра «Сколково».
Растем из года в год в 2х раз, в связи с чем активно расширяем команду (на сегодняшний день продуктовая команда уже 40+ человек)

Обязанности:
🔸Разработка с нуля приложения с сложным UI в команде разработчиков
🔸Построение архитектуры
🔸Реализация клиент-серверного взаимодействия
🔸Написание тестов

От Вас:
🔸От 3-х лет в разработке на Android
🔸Знание Java/Kotlin на уровне ведущего разработчика
🔸Знание архитектурных паттернов (MVVM / Clean Architecture), ООП
🔸Знания цикла работы приложения, управления памятью
🔸Опыт работы или понимание RxJava, RxAndroid, Retrofit, Dagger2, Android Data Binding
🔸Понимание Android Architecture Components будет плюсом
🔸CI / CD
🔸Все тонкости работы с клиент-серверной архитектурой
🔸Умение отлаживать приложение, профилирование кода

От нас: белая зп, официальное трудоустройство, больничные, отпуска, ДМС. Оплата 50% стоимости посещений профессиональных форумов. Регулярная обратная связь и аттестации. Геймификация процессов и несколько раз в год релокейты поработать в другую страну. Клевый молодой коллектив, интересные ивенты, насыщенная корпоративная жизнь. Пинг-понг, бильярд и другие активности в офисе. Скидки на путешествия)

Связь по почте : ap@level.travelap@level.travel
Или тут @anya_podlesnaya@anya_podlesnaya
источник

AL

Alex Lebedev in AndroidDev :: Разработка. It's Android time now!
Специалист по созданию мобильных приложений
ООО "Фарммониторинг"
Проектная работа / Удаленка
Оплата: 400 000 руб.
#приложения #приложение #ios #android #РФ #удаленка #Россия
Необходимые навыки:
• Опыт по созданию приложений на IOS
• Опыт по созданию приложений на Android
• Общий опыт работы от 3 лет
Обязанности:
• Создание мобильных приложений на ios и android
• ТЗ предоставляем
Условия:
• Оплата 400 000 руб. за проект
• 100% удаленная работа
• Возможность совмещать с основной работой, другими проектами
• Проектная работа
• Максимально адекватный заказчик
Для отклика и получения ТЗ, пиши сюда: @ushappyboy
источник

AU

Alexandr Ukolov in AndroidDev :: Разработка. It's Android time now!
А чем сайт плох? Помню когда начинал меня сильно выручали статейки там
источник

AG

Adanos Gotoman in AndroidDev :: Разработка. It's Android time now!
Alexandr Ukolov
А чем сайт плох? Помню когда начинал меня сильно выручали статейки там
Не всегда верно что-то.
источник

AG

Adanos Gotoman in AndroidDev :: Разработка. It's Android time now!
Но я разобрался уже
источник

AG

Adanos Gotoman in AndroidDev :: Разработка. It's Android time now!
Извините, а для чего нужно писать @Override?
Что это за ключевое слово и когда его надо использовать? Это я для Явы спрашиваю...
источник

MZ

Meent Zeirison in AndroidDev :: Разработка. It's Android time now!
Adanos Gotoman
Извините, а для чего нужно писать @Override?
Что это за ключевое слово и когда его надо использовать? Это я для Явы спрашиваю...
Это значит, что ты делаешь наследование чего-то, если грубо
источник

VV

Valentin Volodarskij in AndroidDev :: Разработка. It's Android time now!
Adanos Gotoman
Извините, а для чего нужно писать @Override?
Что это за ключевое слово и когда его надо использовать? Это я для Явы спрашиваю...
источник

J

Jktu in AndroidDev :: Разработка. It's Android time now!
Adanos Gotoman
Извините, а для чего нужно писать @Override?
Что это за ключевое слово и когда его надо использовать? Это я для Явы спрашиваю...
источник

AI

Andrey Ivanov in AndroidDev :: Разработка. It's Android time now!
Привет. Пишу простую аппку для запуска и менеджинга бэкграунд-сервиса. подскажите по азам - я правильно понимаю, что при открытии другого приложения активити моего улетает из стека и удаляется GC? Но если с ним связан какой-то сервис, выполняющийся в бэкграунде, то при открытии приложения снова его активити создастся заново? Поэтому нельзя хранить параметры сервиса в полях экземпляра активити? Или все не так, и в этом случае экземпляр активити жевет даже при работе сервиса в фоне?
источник

AF

Arkadiy Filimonov in AndroidDev :: Разработка. It's Android time now!
Andrey Ivanov
Привет. Пишу простую аппку для запуска и менеджинга бэкграунд-сервиса. подскажите по азам - я правильно понимаю, что при открытии другого приложения активити моего улетает из стека и удаляется GC? Но если с ним связан какой-то сервис, выполняющийся в бэкграунде, то при открытии приложения снова его активити создастся заново? Поэтому нельзя хранить параметры сервиса в полях экземпляра активити? Или все не так, и в этом случае экземпляр активити жевет даже при работе сервиса в фоне?
Бэкграунд сервисы мертвы, делай фореграунд или в ворк менеджере
источник

AI

Andrey Ivanov in AndroidDev :: Разработка. It's Android time now!
Пасиб, покурю. А не подскажете где можно почитать по этой теме не самую. древнюю доку?
источник

A

Alexander in AndroidDev :: Разработка. It's Android time now!
Andrey Ivanov
Привет. Пишу простую аппку для запуска и менеджинга бэкграунд-сервиса. подскажите по азам - я правильно понимаю, что при открытии другого приложения активити моего улетает из стека и удаляется GC? Но если с ним связан какой-то сервис, выполняющийся в бэкграунде, то при открытии приложения снова его активити создастся заново? Поэтому нельзя хранить параметры сервиса в полях экземпляра активити? Или все не так, и в этом случае экземпляр активити жевет даже при работе сервиса в фоне?
Не совсем. Активность живёт в контексте процесса, как и сервис. Если ты открываешь другое приложение - андроид может выгрузить активность. А может и не выгрузить. То же самое с сервисом - андроид может остановить процесс вместе с сервисом, а может и не остановить.

Про связь совсем другая история. У объектов, связанных с контекстом, таких как активность, сервис и прочие есть определенный жизненный цикл. И если ты где-то сохраняешь ссылку на них, в каких-либо объектах, которые живут дольше этих активностей, то у тебя сборщик мусора не уничтожит активность, хотя андроид выгрузит саму активность. И в итоге будет утечка памяти
источник

A

Alexander in AndroidDev :: Разработка. It's Android time now!
И это относится ко всем объектам. Пока у тебя кто-то держит ссылку на объект - он не будет уничтожен сборщиком мусора пока не будет уничтожен тот, кто держит или пока не будет уничтожен тред, в котором были созданы эти объекты
источник

AI

Andrey Ivanov in AndroidDev :: Разработка. It's Android time now!
Последнее логично и понятно, это общая семантика GC. Сейчас я в активити сохраняю ссылку на экземпляр сервиса. Но на саму активити нигде ссылок нет, поэтому я и подумал, а не уничтожит ли мне Андроид активити, оставив сервис. А на самом деле судя по вашему описанию все сложнее. У меня то задача простейшая - единственная активити управляет этим сервисом, но сервис должен продолжать работать при открытии других приложений/активитей
источник

A

Alexander in AndroidDev :: Разработка. It's Android time now!
Andrey Ivanov
Последнее логично и понятно, это общая семантика GC. Сейчас я в активити сохраняю ссылку на экземпляр сервиса. Но на саму активити нигде ссылок нет, поэтому я и подумал, а не уничтожит ли мне Андроид активити, оставив сервис. А на самом деле судя по вашему описанию все сложнее. У меня то задача простейшая - единственная активити управляет этим сервисом, но сервис должен продолжать работать при открытии других приложений/активитей
Может уничтожить. Если сервис будет потреблять ресурсов больше, чем того хочет андроид - он может быть остановлен, а активность - нет. И у тебя будет ссылка в никуда.

Если сервис должен продолжать работу всегда - то используй foreground service. Остальные могут быть остановлены.
Можно так же перезапускать сервис при его остановке, но тут я не совсем уверен, будет ли это продолжаться до бесконечности, скорее всего нет(https://developer.android.com/about/versions/oreo/background.html)

Для общения между сервисом или активностью лучше делать связанный сервис(https://developer.android.com/guide/components/bound-services.html). Ну и в целом про сервисы посмотри тут: https://developer.android.com/guide/components/services и дальше по ссылкам, там много написано про их жизненный цикл и как связывать с активностью
источник

AI

Andrey Ivanov in AndroidDev :: Разработка. It's Android time now!
Спасибо большое! Пошел читать )
источник
2020 February 06

AM

Anton Mikhaylenko in AndroidDev :: Разработка. It's Android time now!
Всем привет, Почему элемент размером в 100 dp помещается полностью в родительском элементе, а 2 элемента по 50 dp нет? как можно убрать этот отступ? Родительский - LinearLayout, дочерние - FrameLayout
источник
2020 February 07

DT

Dmitriy Titov in AndroidDev :: Разработка. It's Android time now!
Anton Mikhaylenko
Всем привет, Почему элемент размером в 100 dp помещается полностью в родительском элементе, а 2 элемента по 50 dp нет? как можно убрать этот отступ? Родительский - LinearLayout, дочерние - FrameLayout
Не понятно, чего нужно добиться. Ещё хмл можешь показать.
источник

EB

Eugene B. in AndroidDev :: Разработка. It's Android time now!
Всем привет, господа нужно разработать простое мобильное приложение, кто сможет помочь?
источник