Как стать автором
Обновить
195.69

Разработка под Android *

Пишем под самую популярную мобильную ОС

Сначала показывать
Порог рейтинга
Уровень сложности

Почему я пишу игры на Unity

Время на прочтение 6 мин
Количество просмотров 32K

Здравствуйте. Меня зовут Валентин, мне 14 лет и я являюсь разработчиком игр. В рамках этой статьи хотелось бы рассказать о том, как молодой человек может начать, продолжить и достичь некоторых результатов в разработке игр с использованием движка Unity.

Читать далее
Всего голосов 116: ↑112 и ↓4 +108
Комментарии 59

Первая игра за 4 месяца

Время на прочтение 4 мин
Количество просмотров 12K

Всем Привет, мне 22. я чуть больше полу года назад, понял, что хочу делать игры. Начал изучать C#, 3 месяца учил основы из книжки Шилдта, половину осилил с конспектами, потом решил, что учиться лучше на практике, а то очень страшно от неизвестности, не понимал как вообще что там делать(в Unity)

Читать далее
Всего голосов 39: ↑37 и ↓2 +35
Комментарии 41

Возможности интеграции Counter-Strike: Global Offensive

Время на прочтение 9 мин
Количество просмотров 15K
Image by andytb under license CC BY-SA 2.0
Counter-Strike: Global Offensive — современная версия старой доброй «CS 1.6». За двадцать лет развития серии технологии сильно изменились. Ранее соревнования по CS проходили в конференц-залах, а информация, доступная наблюдателю, была крайне скудна. Сейчас крупные соревнования по Counter-Strike проводятся на огромных стадионах, а количество выводимой на экраны информации зашкаливает.

Мне стало интересно, как организован экспорт игрового состояния в сторонние системы, например, для управления сценическим освещением. В этой статье я расскажу про то, как это работает, и покажу, как можно превратить телефон на Android в устройство вывода игрового состояния.
Читать дальше →
Всего голосов 51: ↑51 и ↓0 +51
Комментарии 7

Ontol про Kotlin: подборка 28 самых полезных бесплатных курсов и видео на Youtube

Время на прочтение 13 мин
Количество просмотров 17K
image

На английском


freeCodeCamp — лучший и при этом бесплатный канал для самообучения программированию. Многие платные школы просто делают «рерайт» их программ и продают за 100К руб.


850 000 просмотров
2,5 часа
курс для начинающих 2019 года

Содержание
(0:00:50) Create Your First Kotlin Project
(0:04:23) Hello World
(0:06:33) Working With Variables
(0:11:04) Type System
(0:15:00) Basic Control Flow
(0:21:31) Basic Kotlin Functions
(0:27:12) Function Parameters
(0:32:52) Arrays
(0:35:28) Iterating with forEach
(0:41:17) Lists
(0:42:47) Maps
(0:45:05) Mutable vs Immutable Collections
(0:49:24) Vararg Parameters
(0:54:21) Named Arguments
(0:56:26) Default Parameter Values
(1:00:27) Create A Simple Class
(1:03:35) Adding Class Properties
(1:05:15) Class Init Block
(1:06:40) Accessing Class Properties
(1:07:32) Primary Constructor Properties
(1:08:17) Secondary Constructors
(1:09:50) Working With Multiple Init Blocks
(1:11:30) Default Property Values
(1:11:59) Properties With Custom Getters/Setters
(1:16:52) Class Methods
(1:20:12) Visibility Modifiers — Public/Private/Protected/Public
(1:22:30) Interfaces
(1:24:21) Abstract Classes
(1:26:13) Implementing An Interface
(1:26:35) Overriding Methods
(1:28:30) Default Interface Methods
(1:29:30) Interface Properties
(1:31:40) Implementing Multiple Interfaces
(1:32:57) Type Checking And Smart Casts
(1:36:18) Inheritance
(1:43:07) Object Expressions
(1:45:06) Companion Objects
(1:49:51) Object Declarations
(1:52:41) Enum Classes
(1:58:16) Sealed Classes
(2:00:07) Data Classes
(2:12:25) Extension Functions/Properties
(2:16:40) Higher-Order Functions
(2:29:07) Using The Kotlin Standard Library
(2:00:07) Data Classes

Читать дальше →
Всего голосов 40: ↑33 и ↓7 +26
Комментарии 15

Истории

Как не выйти в Window при работе с Window?

Время на прочтение 9 мин
Количество просмотров 7.5K

Многие разработчики разбиваются о жизненные циклы onResume, onActivity, onCreate, которые связаны с отображением UI внутри приложения, будь то Activity или фрагмент. Некоторые методы работы со стремительно развивающимся андроидом приходится искать интуитивно, потому что официальная документация не дает полной картины. Стоит разобраться, где заканчиваются знания и начинается интуиция.

Я Дмитрий Манько, андроид-разработчик в компании Ситимобил, попробую объяснить, что такое onResume() и почему определение от Google не совсем корректное. Разберу иерархию внутри Activity, покажу когда происходит взаимодействие и какие события для этого нужны. А ещё объясню, почему фрагмент дешевле и проще Activity.

Читать далее
Всего голосов 25: ↑25 и ↓0 +25
Комментарии 3

Взламываем ТВ-приставку, чтобы получить плацдарм для хакерских атак

Время на прочтение 8 мин
Количество просмотров 34K

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

Читать далее
Всего голосов 64: ↑61 и ↓3 +58
Комментарии 18

HDR-видео и смартфон

Время на прочтение 12 мин
Количество просмотров 22K

Каждый, кто хоть чуть-чуть интересуется технологиями, не раз слышал о поддержке технологии HDR смартфонами, мониторами или телевизорами. В этой статье мы попытаемся разобраться, что это за технология, для чего она нужна и насколько хорошо с ней дружат смартфоны. Вы читаете умную статью. А с вами умный чел, разработчик Android-приложения для видеосъемки mcpro24fps, Александр Трофимов. Поехали! (Где-то я подобное уже слышал)

Узнать больше о HDR-видео
Всего голосов 34: ↑33 и ↓1 +32
Комментарии 12

Абсолютный обман. Фейковые приложения для Android и iOS — почему в них верят

Время на прочтение 5 мин
Количество просмотров 19K

После длительного обучения на конкретной кошке приложение MeowTalk распознаёт 13 фраз конкретно этого экземпляра. Учёные предполагают, что у котов нет общевидового языка

Микроскоп, показывающий микробов через камеру смартфона. Ультразвук от комаров через стандартный динамик. Детектор лжи по голосу собеседника. Переводчики собак и кошек на человеческий язык. И так далее, список бесконечный. Фейковые приложения Google Play — это чудесная смесь из креатива, жадности, невежества и будущего, которое ещё недостаточно распространилось.

Жадные до денег, но креативные разработчики цинично обманывают невежественных пользователей, продавая пустышку под видом конфеты. Бывают и более продвинутые случаи, когда разработчик действительно пытается создать нечто выдающееся, применив машинное обучение.
Читать дальше →
Всего голосов 42: ↑42 и ↓0 +42
Комментарии 42

Почему любой Android снимает видео хуже iPhone?

Время на прочтение 10 мин
Количество просмотров 133K

Привет, камрады, киноделы и просто читатели! 

Некоторые из вас меня знают как разработчика Андроид-приложения mcpro24fps, предназначенного для профессиональной видеосъёмки на телефон. И сегодня я бы хотел обсудить такую тему: «Почему iPhone остается лидером в видеосъёмке?»

Читать далее
Всего голосов 259: ↑243 и ↓16 +227
Комментарии 716

Запись звука и отображение громкости на Android

Время на прочтение 4 мин
Количество просмотров 6.5K
Всем привет! Меня зовут Юрий Дорофеев, я Android-разработчик и преподаватель в Mail.ru Group. Если вы когда-нибудь записывали аудиосообщения, то видели, как анимируется интерфейс в зависимости от громкости вашего голоса. Давайте повторим этот эффект:


Читать дальше →
Всего голосов 27: ↑26 и ↓1 +25
Комментарии 4

Jetpack Compose — как легко построить UI на Android

Время на прочтение 4 мин
Количество просмотров 14K

В июле этого года вместе с Android Studio Arctic Fox вышла одна из долгожданных библиотек — Jetpack Compose. Она позволяет создавать пользовательский интерфейс в декларативном стиле и обещает быть революцией в построении UI.

Разбираемся, так ли это на самом деле, какие у библиотеки преимущества и недостатки. Подробности — в статье.

Читать далее
Всего голосов 51: ↑46 и ↓5 +41
Комментарии 15

Тестовая ферма из Android-устройств: как собрать, отладить и не взорвать офис

Время на прочтение 11 мин
Количество просмотров 12K


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

Я Павел Щеваев, CTO студии BIT.GAMES, которая является частью международного игрового бренда MY.GAMES. Вы можете знать нас по RPG «Гильдия Героев», а ваши мамы — по «Домовятам» в Одноклассниках. Да, это были мы. :) Но сегодня речь пойдет о нашем новом проекте Storyngton Hall. Это головоломка «три в ряд» с сюжетом, по которому красивые леди разгадывают загадки, декорируют комнаты, примеряют платья, устраивают балы, и, в конце концов, выходят замуж.
Читать дальше →
Всего голосов 29: ↑29 и ↓0 +29
Комментарии 14

Jetpack Microbenchmark — тестируем производительность кода

Время на прочтение 6 мин
Количество просмотров 4K

В мобильной разработке периодически возникают ситуации, когда нужно оценить время выполнения кода. Помимо теоретических подходов (например, Big O), которые позволяют отсеять очевидно неудачные решения, существуют бенчмарки для тестирования кода и поиска более мелких отличий. 

В этой статье расскажу, как устроена и работает библиотека Microbenchmark от Google, а также покажу примеры использования. С ней можно не только оценить производительность, но и решить спорные ситуации на код-ревью.

Читать далее
Всего голосов 43: ↑42 и ↓1 +41
Комментарии 0

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн

Оптимизируем отображение 10 000 объектов на карте

Время на прочтение 13 мин
Количество просмотров 12K

В приложении ЦИАН размещены десятки тысяч объявлений о недвижимости. Нашим пользователям важно видеть географическое расположение этих объявлений на карте. Самым популярным способом отображения оказался вариант, когда каждое объявление показано отдельной точкой. Внутри команды такой вариант мы назвали «Горошек на карте».

Проблема в том, что объявлений очень много: в одной только Москве более 10 000. Из-за этого наша карта работала не очень стабильно: при зуме и движении были тормоза, дёргалась и лагала картинка. С этим нужно было что-то делать. Чтобы разобраться в причинах проблем и найти решения, мы засучили рукава и начали копаться в используемых механизмах. Под катом подробно опишем весь путь оптимизации карт в Android-приложении: от постановки задачи до результата.

Читать далее
Всего голосов 30: ↑30 и ↓0 +30
Комментарии 18

Как Android пришел к AAB? Что будет с APK? Разбор

Время на прочтение 8 мин
Количество просмотров 27K
Не так давно прогремела новость о том, что Android отказывается от APK-файлов и переходит на AAB. Вы наверняка уже эту новость прочитали, во всём разобрались и успокоились, так как новость проходная. Тем не менее, мы считаем, что переход к новой системе публикации приложений App Bundle — это часть большого пути, которую проделала система Android, чтобы стать по-настоящему быстрой, эффективной и супероптимизированной платформой. Поэтому мы подготовили большой и очень интересный материал. И сегодня мы раскроем вам массу страшных тайн Android.


  • Сегодня мы поговорим о том почему Android сначала тормозил, а потом перестал.
  • Помянем Dalvik кэш и припомним ART.
  • Узнаем во сколько внутри Android просыпается демон.
  • А также слегка затронем тему, почему Android никогда не обгонит iOS по производительность, но при этом всегда будет менее требовательным к железу.
Читать дальше →
Всего голосов 44: ↑41 и ↓3 +38
Комментарии 50

Развенчиваем мифы про Chrome OS

Время на прочтение 8 мин
Количество просмотров 56K

Многие считают, что всё знают о системе Chrome OS, ни разу не пользовавшись ей: «Ну я ж знаю Хром, а тут в ОС только браузер и есть, всё понятно». Но на самом деле даже в словах «только браузер» уже содержится ошибка.

В 2019-м я купил Google Pixelbook (не как основное устройство, а как мобильное дополнение к десктопу). Тогда же проехал с ним по всей России, как следует попользовавшись, и с тех пор на многие стереотипы о Chrome OS смотрю как на устаревшие мифы. И когда позавчера появилась новость «Google создаёт собственный Arm-процессор для хромбуков», в её интернет-обсуждениях снова увидел тот же набор стереотипов. Поэтому решил, что раз уж знаю больше, надо поделиться этим с Хабром.

Читать далее
Всего голосов 51: ↑44 и ↓7 +37
Комментарии 137

CalyxOS: лучший способ очистить Android от следов Google

Время на прочтение 5 мин
Количество просмотров 61K

Android Open Source Project — свободный проект. Однако в него очень глубоко проникла корпорация Google. К сожалению, всё больше API и библиотек Android теперь доступны только на смартфонах с предустановленными приложениями Google Apps (GApps). Таким способом Google эффективно привязывает сторонние приложения к своей закрытой экосистеме. В результате ряд популярных опенсорсных приложений уже не могут работать без библиотек Google.

По сути, Android представляет собой особый вид опенсорса типа «смотри, но не трогай», по модели Shared Source. Неудивительно, что набирают силу опенсорсные проекты, которые ставят целью полностью удалить Google из мобильной ОС. Один из последних примеров — прошивка CalyxOS, ориентированная на безопасность и приватность.
Читать дальше →
Всего голосов 59: ↑57 и ↓2 +55
Комментарии 95

Как за неделю до релиза переобуться и сократить размер билда в 3 раза

Время на прочтение 8 мин
Количество просмотров 6.3K

Современные AAA-тайтлы уже давно стали весить больше 100 ГБ, а их апдейт еще на 20 ГБ считается обычным делом. Тот же тренд разрастания билда постепенно просачивается в мидкорные и хардкорные мобильные игры. Впрочем, к тому, что уже не удивляет ПК- и консольных юзеров, мобильные геймеры все еще довольно чувствительны.

Размер игры на релизе может оказаться гораздо больше необходимого, такое бывает. И даже тогда, когда кажется, что в билде осталось все только нужное, всегда найдется то, что можно оптимизировать и сократить. 

Читать далее
Всего голосов 34: ↑33 и ↓1 +32
Комментарии 5

Готовимся к Windows 11: добавляем поддержку полноценной клавиатуры в Android-приложение

Время на прочтение 4 мин
Количество просмотров 9.1K

Многие мобильные приложения уже могут конкурировать с полноценными десктопными вариантами, а иногда и превосходить их. Офисные пакеты, фоторедакторы и IDE вполне неплохо работают на портативных девайсах. Samsung, например, даже сделал специальный режим DeX Mode, который позволяет подключить к смартфону монитор и периферию.

А скорый релиз Windows 11 с возможностью устанавливать любые APK-файлы прямо намекает, что пора озаботиться поддержкой десктопных режимов в своих мобильных приложениях. Один из шагов к этому — добавить полноценную поддержку клавиатуры, чем сегодня и займёмся.

Под катом разберём навигацию по RecyclerView, привязку горячих клавиш к toolbar menu, добавим кастомные сочетания и покажем пользователям, как ими пользоваться.

Читать далее
Всего голосов 54: ↑53 и ↓1 +52
Комментарии 16

Работа с фоновыми задачами в Android 12: переезжаем с foreground service на expedited jobs

Время на прочтение 4 мин
Количество просмотров 10K

С релизом Android 12 приложения, где новая версия операционки будет указана в targetSdkVersion, получат запрет на запуск foreground-сервисов в бэкграунде. В качестве альтернативы Google предлагает WorkManager, который с появлением expedited jobs станет предпочтительным вариантом для запуска высокоприоритетных фоновых задач. 

О нём и пойдёт речь в статье — под катом обсудим новые возможности инструмента, подключим его к приложению и реализуем миграцию с foreground-сервиса.

Читать далее
Всего голосов 60: ↑60 и ↓0 +60
Комментарии 19

Вклад авторов

Работа