Рубрика «android» - 17

image

Привет! Hello, World!

Меня зовут Андрей Евсюков, я заместитель технического директора в Delivery Club. А это первый пост в нашем блоге на Хабре. Сегодня расскажу о том, как и где можно узнать про разработку, процессы и команду Delivery Club. Спойлер: до сих пор никто так много не знал, как устроен DC Tech.
Читать полностью »

Все началось с того, что мне подарили пульсометр. Точнее, сначала я решил, что надо бы как-то бороться с возможными последствиями сидячей работы, и начал бегать. Как любой гик, начавший бегать, тут же поставил себе соответствующее приложение, чтобы отслеживать пробежки и делиться ими с друзьями. И вот уже после этого, когда мне подарили пульсометр и я несколько раз пробежался, замеряя пульс, товарищи попытались мне объяснить, что себя надо беречь и стараться, чтобы пульс во время пробежки не зашкаливал за 180. Я по неопытности думал, что в беге — чем быстрее, тем лучше. Но в процессе изучения матчасти выяснилось, что результат тренировки сильно зависит от того, с каким пульсом ты бегаешь — и для некоторых целей нужен низкий пульс (и, соответственно, низкий темп).

Контроль пульса во время пробежки через музыкальную обратную связь — или «ищутся тестировщики, любящие бегать» - 1

Читать полностью »

Последний год я так или иначе пишу приложения на Flutter для iOS и Android. До этого у меня был и есть 5 летний опыт работы с Xamarin. Это были замечательные 5 лет. Благодаря Xamarin и моей любви к этому фреймворку я, в принципе, перешел в стан разработчиков, этот инструмент помог заработать мне немалых денег, знаний и найти замечательных коллег. Так почему же сейчас я пишу на Flutter? Короткий ответ, потому что Flutter покрывает все потребности кросс-платформенной разработки.

Почему Flutter побеждает? - 1

Немного истории

Поправьте меня если я не прав, но 2009 год был во многом ключевым для мобильной разработки в целом и кроссплатформенной разработки в частности. В 2009 вышел iPhone 3gs, который позволял запускать сторонние приложения из AppStore. Впервые эта возможность появилась в годом ранее в iPhone 3g, но по настоящему массовым, «народным» айфоном стал 3gs. Опять же, годом ранее, в сентябре 2008 Android был представлен публике и в 2009 многие производители телефонов стали пробовать Android для своих новый моделей телефонов. Весной 2009 компания Nitobi представила PhoneGap — новый фреймворк для создания кроссплатформенных приложений на основе HTML5, CSS и JS. В том же году, в сентябре компания Ximian выпустила MonoTouch, который позволял писать iOS приложения с использованием Mono и C#. В том же 2009, в декабре, компания Rovio Entertainment выпустила игру для iOS и, на минуточку, Maemo, которая во многом положила начало индустрии мобильных игр — Angry Birds. Последний пример здесь не случайно.
Читать полностью »

Мне нравится раскладка клавиатур на Mac: Cmd(Ctrl) под большим пальцем и возможность, без шаманства, прямо в настройках изменить поведение CapsLock. Такого же результата легко добиться в Linux с помощью setxkbmap в консоли или, например, gnome-tweak-tool в UI. Но что делать, если клавиатура подключается к Android?

Кастомизируем раскладку внешней клавиатуры на Android без root - 1

Читать полностью »

Для видеозвонков в Badoo мы используем стандарт WebRTC и кодек H.264. Если верить документации, этот кодек должен без проблем работать на любых устройствах Android начиная с Android 5.0. Но на практике всё оказалось не совсем так. В этой статье я расскажу про особенности реализации аппаратного кодирования для кодека H.264 в WebRTC и о том, как заставить его работать на большем количестве устройств.

WebRTC на Android: как включить аппаратное кодирование на множестве устройств - 1
Читать полностью »

О недавних обновлениях Google Play Trust & Safety - 1

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

Этой статьей мы бы хотели ещё раз обратить внимание русскоговорящих Android разработчиков и пользователей на недавние изменения политик Google Play, и немного подробнее рассказать о двух наиболее значимых изменениях: более прозрачных для пользователей предложениях платной подписки и ограничении доступа приложений к геолокации.

Читать полностью »

Мир, код, май: проводим праздники с полезными докладами - 1
Автор оригинала diliago

До этой недели слова про «саморазвитие на самоизоляции» были не очень актуальны для айтишников: они продолжали активно работать, у них не появилась прорва времени на книги или онлайн-курсы.

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

Мы считаем это подходящим моментом, чтобы получить знания не по своему основному профилю, а по смежным темам. Посмотреть по сторонам всегда интересно, но обычно до этого не доходят руки из-за горящих задач, а вот сейчас возможность есть.

Поэтому мы взяли видеозаписи наших конференций и составили плейлисты по необычному принципу: решили показать различным специалистам доклады не со знакомого им мероприятия по их направлению, а с других. Что джавистам было бы особенно близко на конференции по тестированию? А что фронтендеры могут узнать от дотнетчиков?

Читать полностью »

ПШЕ AndroidStudio или как использовать VCS Tools по полной

- Все хорошо, только перед влитием обязательно засквош коммиты.
- Заскво...Что?

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

После перехода в новую компанию я столкнулся с той же проблемой, но уже по другую сторону баррикад. Если вы еще не догадались о чем пойдет речь дальше — это GIT, говоря точнее, его встроенный инструментарий в AndroidStudio и как он позволяет сделать нашу работу проще.

Я постараюсь не обращать внимания на банальные вещи: init VCS; new/rename/push branch; rebase/merge onto branch; setup remotes e.t.c. Я постараюсь обратить внимание на те элементы, которые по боязни своего незнания, я долгое время избегал(и жалею).

Читать полностью »

Чиним сериализацию объектов в Kotlin раз и навсегда - 1

Недавно я наткнулся на статью о проблеме c Java-сериализацией объектов в Kotlin. Автор предложил решать её добавлением метода readResolve к каждому объекту, который наследуется от java.io.Serializable.

Этот способ выглядит абсолютно правильным, однако его поддержка может оказаться слишком проблематичной. С учетом того, что в нашем проекте эта проблема возникала только при использовании объектов внутри Bundle, мы решили использовать проверку через is для каждой ветки when-выражений в случае sealed классов.

Тем не менее, размышляя об этом, я никак не мог понять, почему Kotlin не генерирует readResolve в компиляторе, поддерживая singleton-свойства объектов. Мне казалось, что это работа для инструментов, а не для человека. Но раз Kotlin не добавляет эту функцию сам, мы можем ему помочь! Этим мы сейчас и займёмся.

Читать полностью »

Итоги online-этапа NeoQUEST-2020: выживали как могли - 1

NeoQUEST-2020 подошел к концу, и сейчас самое время рассказать про эти насыщенные две недели: раскроем суть заданий (но не всех, некоторые выйдут отдельными врайт-апами), покажем статистику их прохождения и объявим победителей!

Внимание! Статья содержит спойлеры для тех, кто еще не проходил задания, но честно собирается (а такая возможность есть – сайт online этапа продолжает работать!).
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js