кто придумал это приложение
Кто такой мобильный разработчик и как им стать
Рассказываем, как стартовать в мобильной разработке и почему без Мака у вас только один путь.
Мобильный разработчик — это программист, который пишет приложения для мобильных устройств. К ним относятся не только смартфоны и планшеты, но и умные часы, фитнес-трекеры, электронные читалки, GPS-навигаторы и все остальные штуки с экраном и клавиатурой, которые можно носить с собой.
Большинство носимых устройств работает под управлением Android или iOS. Поэтому мобильные разработчики пишут софт для этих операционных систем.
Фанат Free Software Foundation, использую Linux и недолюбливаю Windows. Пишу истории про кодинг и программы на Python. Влюблен в LISP, но пока что не умею на нем программировать.
Немного истории: предсказание Джобса и революция мобильной разработки
Мобильная разработка в нынешнем её понимании возникла в нулевых, после выхода Java Micro Edition и WAP — урезанной версии доступа в интернет. Люди хотели развлекаться в сети, проверять электронную почту, общаться в ICQ — делать всё то же самое, что и на обычных компьютерах, но со своих мобильных телефонов.
Специальная версия языка Java для устройств с ограниченными ресурсами — телефонов, КПК, плееров.
Разработчиков было мало, а под каждую модель телефона приходилось писать отдельную версию программы. Не существовало и удобной системы дистрибуции, хотя идею маркетплейса приложений Стив Джобс выдвинул ещё в 1983 году на международной конференции по дизайну в Аспене.
В выступлении «Будущее уже не то, что раньше» Джобс сравнил распространение программ с музыкальными магазинами: человек приходит, берёт бесплатно демку софта, а потом оплачивает полную версию. Причём всё это удалённо, через телефонную линию с помощью номера банковской карты. «Я пока не знаю, как мы это сделаем, но нам это определённо нужно», — закончил он описание будущего AppStore, который появился только через 25 лет.
Первое время рынок мобильной разработки развивался слабо, но Apple и Google постепенно изменили ситуацию:
В мобильной разработке произошла революция: появился спрос на приложения, система дистрибуции и удобные способы монетизации. Телефоны перестали быть просто звонилками — их новые функции надо было как-то использовать.
Перспективы мобильной разработки в цифрах
Мобильных разработчиков нужно всё больше. По данным международной системы аналитики Statcounter, в апреле 2020 года доля мобильного трафика составляла 57%, хотя еще в 2012 году не превышала 14%. Маркетплейсы тоже растут: в первом квартале 2020 года Google Play предлагал 2,5 млн приложений, AppStore — 1,8 млн (по данным Statista.com ).
Вероятно, всё это надолго. Уже появляются док-станции для смартфонов: ноутбук без процессора, превращающий смартфон в полноценный компьютер или компактный настольный девайс, к которому можно подключить смартфон, монитор и клавиатуру с мышью. Два таких проекта — Mirabook и NexDock — получили краудфандинговые инвестиции, а Samsung запустил свою линейку DEX Station.
Какие языки используют для мобильной разработки
Фронтенд — внешняя часть приложения, с которой взаимодействует пользователь. Как руль и педали в машине. Бэкенд — скрытая от пользователя часть приложения, которая обеспечивает всю работу. Как двигатель и ходовая часть.
Kotlin — язык программирования, основанны на Java, разработан в питерской компании Jetbrains.
Язык программирования, созданный Apple. Основная идея — преодолеть все недостатки Objective-C и сделать его максимально простым.
Основанный на Си язык программирования, используется в MacOS и iOS.
Сейчас Apple советует писать на Swift, а Google агитирует всех за Kotlin. Причина в том, что Swift появился в недрах Apple — он изначально создавался как базовый инструмент мобильной разработки, который закрывает все недостатки «старичка» Objective-C. А Kotlin, наоборот, приглянулся командам Android-разработчиков и сначала получил поддержку «снизу». Отвечая на их просьбы, Google в 2019 году назвал Kotlin языком № 1 для Android.
Как новичку выбрать платформу для мобильной разработки
Среда разработки для Android на базе Intellij Idea от Jetbrains. Включает эмулятор Android, языки программирования, компиляторы, инструменты для сборки приложения и создания интерфейсов.
Аналог Xcode от Jetbrains.
Среда разработки для iOS и других операционок от Apple. В ней можно писать и запускать код, собирать и тестировать приложения, создавать графические интерфейсы.
Вот базовый набор инструментов для старта в Android-разработке, который можно установить для Windows, Linux или MacOS:
Набор для старта в iOS-разработке:
Если нет Мака, но попробовать очень хочется, есть три простых варианта:
Где требуются мобильные программисты
Если коротко, то везде. Мобильные приложения делают для любых задач: календари, почта, заметки, игры, мобильный банкинг. Есть даже эмулятор баяна под iOS: щёлкаете по нарисованным на экране кнопкам — наслаждаетесь музыкой:)
Десктопные сервисы и программы тоже не отстают и запускают свои мобильные приложения. В маркетплейсах Google Play и AppStore, например, уже есть 1C Bitrix, Photoshop Lightroom и «Госуслуги». Но мало написать приложение — его нужно постоянно обновлять и поддерживать. Это огромная работа, для которой тоже требуются специалисты.
Но есть и особенно перспективные направления. Ниже — данные за 2019 год.
Игры. Огромная и прибыльная индустрия.
Образование и развлечения. Изучение языков, книги, музыка, путешествия, тренировки, обучающие курсы. Онлайн-образование все сильнее теснит офлайн — люди видят, что это удобно и эффективно. Только за 2019 год объём рынка интернет-обучения вырос на 60%. И это не однократный рост — тренд продолжится.
Банки и финансы. Все банки уже пришли в смартфоны. Например, в приложении «Точка-банка» можно открыть и закрыть счёт, а в мобильном Сбербанке — выпустить физическую или виртуальную карту. Даже «Система город», у которой много офлайн-точек для оплаты коммуналки, уже есть в мобильных.
Это интересная и сложная отрасль. Начинающему разработчику попасть в неё не всегда реально, но грамотным специалистам финтех рад.
Так что потребность в мобильной разработке с годами только растёт — это гигантский рынок с большими оборотами.
Сколько зарабатывает мобильный разработчик
Зарплатная вилка Android-разработчика по данным hh.ru на конец июня 2020 года:
Кроме языка программирования, требуется знание Git и специальных библиотек: RxJava, Dagger, Android Architecture Components.
Зарплатная вилка iOS-разработчиков по данным hh.ru на конец июня 2020 года:
Обычно в вакансиях требуют знание библиотеки RxSwift.
Как стать мобильным разработчиком за семь шагов
Вот дорожная карта: на входе — новичок, на выходе — деньги, слава и крутые задачи.
Конечно, всему этому можно учиться самостоятельно — по книгам, видео и мануалам. Но это трудный и долгий путь, особенно для новичков в программировании. Гораздо эффективнее стартовать с опытными наставниками и постоянной обратной связью.
На курсе «Мобильный разработчик» от Skillbox студенты создают полноценные проекты в атмосфере реальной студии, изучают весь необходимый набор технологий и общаются с менторами. Первые полгода можно учиться бесплатно, а деньги за курс отдавать уже с первой зарплаты.
Профессия Мобильный разработчик
Масштабная программа профессиональной подготовки с гарантированным трудоустройством. Вебинары, живые встречи, хакатоны и задачи от реальных клиентов. Вы получаете навыки программирования и создания приложений для iPhone и Android, даже если никогда раньше этого не делали. Перенимаете концентрацию опыта у сильных разработчиков и основателей собственных компаний — преподавателей нашего курса.
После прохождения обучения — помощь в трудоустройстве.
История и эволюция мобильных приложений
Вы заметили эволюцию мобильных приложений? У мобильных технологий есть интересная черта: они меняются каждые две недели.
Футуристы и исследователи считают, что цифровые технологии, в том числе мобильные приложения, будут стремительно развиваться, исходя из прошлых тенденций.
Если вы проведете аналогию между приложениями, которые мы используем сегодня и которые мы использовали несколько лет назад, разница будет поразительной.
В начале 2000-х приложения демонстрировали только контент, который было возможно, вместо того, чтобы показывать контент, который нужен людям. Сегодня правила другие.
Мы видим интуитивный контент, который никогда не отклоняется от интересов и ожиданий пользователя. Технические новинки, среди которых гироскопы и данные о местоположении, постоянно улучшаются и заботятся об опыте пользователя.
Данные для определения демографических и других характеристик, изучение предпочтений и особенностей поведения человека по ту сторону экрана — миллионы приложений каждый день собирают информацию, чтобы лучше соответствовать вашим ожиданиям.
Все это происходит автоматически, без вмешательства человека. Вспомните, как Amazon удивляет вас продуктами, которые вы уже просматривали, а затем выводит рекомендации, основанные на предыдущих поисках.
Удовлетворенность пользователя и пользовательский опыт являются двумя ключевыми факторами, вокруг которых сегодня вращается разработка мобильных приложений .
Очень скоро компьютеры будут собирать все, что вы искали в соответствии с вашими предпочтениями, в приложение, отображая данные на экране смартфона.
Кроме того, мобильные приложения становятся все более разнообразными, позволяя технически подкованным пользователям находить оптимальный вариант для себя.
Люди ищут приложение, которое было бы цельным и безграничным.
Мы используем по нескольку разных мобильных приложений каждый день, и каждое из них значительно облегчает жизнь. С появлением Интернета вещей они переходят на качественно новый уровень, где мир сосредоточен на кончике пальца.
Определение мобильного приложения
Мобильное приложение — это специальное программное обеспечение, которое разрабатывается для смартфонов, планшетов и других мобильных устройств.
Приложения для мобильных устройств — это настолько просто, что мы вряд ли подберем лучшее определение. Как правило, эти программы предназначены для iOS и Android.
Приложения облегчили нам жизнь, и мы достигли точки, когда мы не можем представить работу и досуг без них. Давайте же посмотрим, как все начиналось.
История разработки мобильных приложений
Если мы вернемся к первоистокам проектирования и разработки мобильных приложений, то обнаружим, что первыми приложениями были календари, калькуляторы и даже игры, разрабатываемые в среде Java.
Что интересно, первый в мире смартфон был выпущен IBM в 1993 году.
Он имел такие функции, как книга контактов, календарь, мировое время и калькулятор.
Несколько лет спустя, в 2002 году, был выпущен следующий смартфон Blackberry.
Это было одним из главных достижений в области разработанного мобильных приложений, которое сделало бессмертным имя скромной компании Blackberry Limited, также известной как Research in Motion Limited (RIM).
Их работа привела к интеграции концепции, известной как wireless email.
Интересные факты о первых мобильных телефонах
Первые модели Motorola DynaTAC, поступившие в продажу, получили прозвище «кирпич» из-за их громоздких размеров и веса. Эти первые мобильные телефоны были более 22,5 см без учета антенны в высоту, а весили около 1,2 килограмма.
Ранние мобильные телефоны стоили почти 4000 долларов, что составляет около 10000 долларов в сегодняшних долларах с учетом инфляции. Несмотря на недостатки, технология нравилась богатым деловым людям, которые рассматривали ее как альтернативу пейджеру.
Пользователи были вынуждены заряжать свои мобильные телефоны не менее 10 часов, так как в течение дня батарея разряжалась. Пользователи могли совершать звонки в течение 30 минут в день, после чего мобила требовала зарядки.
Проблемы с сетью и радиусом действия были еще одним препятствием, поскольку они иногда не позволяли звонить абонентам даже в ближайших окрестностях.
Начало мобильных телефонов
В апреле 1973 года, именно 3-го числа этого месяца, Мартин Купер из Motorola впервые позвонил доктору Джоэлу Энгелю из Bell Labs по мобильному телефону.
Всего через пару десятилетий ученые активно разрабатывали операционные системы и мобильные приложения для этих устройств. Отдел исследований и разработок IBM Simon представил первое мобильное приложение для смартфонов в 1993 году.
У портативных компьютеров, или КПК, стояла первая операционная система EPOC, разработанная PSION. Выпущенное на рынок в начале 90-х, это было первое из узнаваемых приложений. 16-битная система EPOC могла запускать дневники и базы данных, электронные таблицы и текстовые процессоры.
Но будущие модели были способны работать с 32-битной ОС и были интегрированы с 2 МБ ОЗУ, что позволяло пользователям добавлять дополнительные приложения через свои пакеты программного обеспечения. Это был значительный шаг вперед.
Затем настала целая эпоха Palm OS.
Разработанные Palm Inc. в 1996 году, эти системы были в основном предназначены для персональных цифровых помощников и известны как Garnet OS. Здесь вам и графический интерфейс пользователя с сенсорным экраном, солидный набор базовых приложений, сторонние приложения на языке C / C ++ и многое другое.
Позже были представлены браузеры протокола беспроводных приложений (WAP).
Язык разметки для беспроводных устройств
Разработанный WAP Forum, язык разметки для беспроводных устройств был специально создан для систем, которые зависели от XML и работали по протоколам WAP.
Он был простой и способный работать на низкой пропускной способности мобильных сетей 90-х, преодолевая существующие ограничения HTML, языка разметки гипертекста, слишком требовательного к вычислительной мощности.
Затем вышел Java ME, J2ME или JME — он был впервые представлен как JSR 68. Позже его заменили на персонализированный Java, который стал любимым для многих. Неудивительно, почему этот язык программирования все еще существует. Ему придавали различные вариации и формы для использования в мобильных устройствах.
Кроме того, CLDC мог работать на устройствах с объемом памяти от 160 КБ до 512 КБ и поставлялся с библиотеками Java, которые способны работать на виртуальных машинах.
Операционная система Symbian стала следующим шагом. Разработанная компанией Symbian Ltd, совместным предприятием Ericsson, Motorola, Nokia и PSION, это была усовершенствованная версия PSION EPOC OS.
До 2008 года это интересное предприятие имело вездесущую операционную систему, способную поддерживать около 250 миллионов устройств во всем мире.
Nokia продолжила работу над импровизацией Symbian, и эта программная платформа под названием S60 была реализована на различных телефонах Nokia, Samsung и LG.
Позже современные смартфоны, которые мы используем сегодня, существенно эволюционировали, сделав жизнь людей приятней и проще.
Изменения особенно коснулись доступности и удобства приложений Подумайте, какой была бы жизнь без миллионов приложений вокруг нас, включая социальные сети, банковские услуги, здоровье и фитнес, игры, путешествия и отдых, покупки, новости и так далее.
Сегодня существуют игровые магазины, которые добавляют около 20 000 приложений каждый месяц. Вам не кажется это фантастической цифрой?
Количество загрузок приложений для iPhone составляет не менее 30 миллиардов, за которыми следует загрузка приложений для Android с показателем в 15 миллиардов.
Теперь мы даже не можем представить жизнь без этих плодов эволюции мобильных приложений. Да, жизнь существовала задолго до смартфонов!
Список приложений, которые нужно попробовать
Познакомимся с некоторыми приложениями, которые стоит попробовать:
Хотите простой способ получать отличные качественные 4K обои для смартфона? Это Abstruct. Создатель знаменитых обоев Хэмпус Олссон создал это приложение для всех эстетов мобильного мира, предоставив доступ к более чем 300 обоям.
Хотели бы вы организовать свою библиотеку фотографий? Тогда Curator — лучший выбор для вас. Приложение поможет помечать фото и выполнять поиск по своим тегам, облегчив доступ к многочисленным снимкам, которыми забито ваше устройство.
Curator может интеллектуально помечать фотографии на основании композиции изображения, и эта функция работает действительно эффективно.
Это мобильное приложение помогает добавить высококачественные эффекты к вашим изображениям. Некоторые из эффектов включают туман, дождь или снег, естественный солнечный свет, и все можно увидеть одновременно в виде галереи.
Удобный функционал облегчит выбор фотографии по своим предпочтениям. В бесплатном приложении вы найдете пять фильтров, но если хочется больше, всегда можно подписаться на платную версию программы Lens Distortion Unlimited.
Когда вы подписываетесь на слишком большое количество потоковых сервисов, вы попросту не можете определиться, что следует смотреть. Значит пора установить Dinggo.
Это идеальное решение. Программа может подбирать потоковые сервисы по предпочтениям, выбирая жанр из нескольких телешоу или фильмов, которые могут вас заинтересовать.
Dinggo позволяет просматривать широкий спектр опций, делая свой мобильный кинозал одновременно разнообразным и отвечающим личным предпочтениям, не зацикливаясь на рекомендациях нескольких сервисов.
Какие мобильные приложения вы хотели бы добавить в этот список?
Мобильные приложения
Содержание
Рынок и платформы мобильных приложений
История
2018: В России принят стандарт разработки мобильных приложений
Государство утвердило предварительный стандарт разработки мобильных приложений, говорится в сообщении Росстандарта, опубликованном на сайте ведомства 10 июля 2018 года. Требования носят рекомендательный характер, но, по словам авторов, должны будут стать «ориентиром при разработке». Подробнее здесь.
2013: PwC о будущем мобильных приложений
Согласно прогнозу, подготовленному PwC в сентябре 2013 года, следующее поколение инновационных решений в области мобильных технологий будет нацелено на распознавание и моделирование контекстуальной ситуации потребителя. Информация о пользователях по трем основным параметрам – физическое местонахождение, виртуальная и социальная среда – станет основным ресурсом, который позволит создать мобильные приложения и услуги, обладающие кардинально новыми возможностями и способные предсказывать потребительские предпочтения. Мобильные устройства смогут стать поистине цифровыми помощниками.
Отчет PwC по результатам этапа II «Новые технологические возможности» в рамках исследования «Прогноз инновационного развития в области мобильных технологий» (Mobile Innovations Forecast (MIF) Phase II: New technological capabilities) наглядно демонстрирует, каким образом будут меняться впечатления пользователей с появлением мобильных технологий следующего поколения.
«Мы вступаем в новую, динамичную фазу развития мобильных технологий, знаменующую переход от ограниченного набора информационных и вычислительных функций к интеллектуальному анализу и рационализации физической, виртуальной и социальной среды пользователей устройств, – отмечает Раман Читкара, руководитель международной практики по оказанию услуг компаниям технологического сектора PwC. – В скором времени мобильные устройства будут способны анализировать и предугадывать человеческие потребности, используя платформы, которые задействуют пользователя, опираясь на информацию, полученную из многочисленных источников. Главная цель этого процесса – создание еще более интуитивных мобильных устройств».
Как отмечается в отчете PwC, контекстуальный интеллект в мобильных вычислениях сможет получать ситуационную информацию из трех основных источников, включая:
1) данные об устройстве (например, источник питания, операционная система, хранение данных и т.п.);
2) данные о физической среде (местонахождение, погода и т.д.);
3) данные о пользователе (ID, приложения, хранящаяся информация и т.д.).
Возможности, которыми должны обладать мобильные устройства, сети, приложения и услуги следующего поколения, для того чтобы собирать данные о пользователях из таких источников, как сенсорные датчики на устройствах, переносные компьютеры и электронная экосистема транспондеров на других людях и объектах, и обрабатывать их:
2000-е: Эпоха коммуникаторов
К тому времени рынок мобильных устройств сотовой связи стали постепенно завоевывать смартфоны и коммуникаторы. Обладая более широкими возможностями и производительностью, они отличались от обычных мобильных телефонов наличием достаточно развитой операционной системы (Windows Mobile, Symbian OS, RIM, Android, Mac OS), которая является открытой для разработки программного обеспечения сторонними разработчиками, в отличие от программной среды обычных мобильных телефонов, которая закрыта для сторонних разработчиков. При этом стоит отметить, что установка дополнительных приложений позволяет значительно улучшить функциональность смартфонов и коммуникаторов по сравнению с обычными мобильными телефонами. Но, заметим, что каждая конкретная операционная система требует установки соответствующих именно ей приложений, то есть созданных специально для той или иной ОС программ. Например, программу-органайзер созданную для Windows Mobile нельзя установить на ОС Simbian, применяемую в смартфонах Nokia Corporation, или Mac OS (Mobile Touch version) для телефона iPhone от компании Apple.
К тому же, стоит отметить, что наличие полнофункциональной операционной системы не делает смартфоны и коммуникаторы более привлекательными в глазах большинства пользователей. Современные сотовые телефоны, а точнее модели, относящиеся к средней ценовой категории и выше, зачастую вполне могут справиться со многими задачами. Они могут работать с электронной почтой, просматривать текстовые документы и электронные таблицы, фотографии и видеофайлы.
Кроме того, экраны целого ряда сотовых телефонов не уступают большинству смартфонов и коммуникаторов, а последние модели оснащаются еще и сенсорными экранами и разъемами для карт памяти. Поэтому сегодня именно владельцы обычных мобильных телефонов составляют большую часть потребителей программных приложений.
Но с другой стороны, смартфоны в глазах данной категории пользователей выглядят более привлекательными за счет других возможностей, таких как, например, продвинутые мультимедийные функции (более качественная камера, расширенные возможности воспроизведения видеофайлов, улучшенные музыкальные способности), Wi-Fi, GPS и другие.
Необходимо также понимать, что программы, написанные специально для операционной системы смартфона или коммуникатора, являются полноценными скомпилированными в двоичный код последовательностями низкоуровневых микропроцессорных команд. А в силу того, что во всех смартфонах и коммуникаторах установлены более мощные процессоры, чем в мобильных телефонах, возможности программиста по созданию таких приложений практически не ограничены.
Специализированные приложения функциональнее, они более рационально использует ресурсы процессора, чем J2ME-программы, основанные на множестве Java-платформ, предназначенных для работы в устройствах с ограниченными ресурсами (ограниченная вычислительная мощность, ограниченный объем памяти, малый размер дисплея, питание от портативной батареи, а также низкоскоростные и недостаточно надежные коммуникационные возможности). Поэтому смартфоны пользуются популярностью среди разработчиков программного обеспечения и энтузиастов.
1990-е: Эпоха мобильных телефонов
Отправной точкой для создания мобильных приложений стало появление на мобильном телефоне экрана. Естественно, первое программное обеспечение для телефонов представляло собой встроенные приложения, которые предназначались для выполнения конкретных функций телефона и устанавливались в устройство самими производителями.
С появлением возможности обмена короткими текстовыми сообщениями (SMS) в телефон добавилась еще одно приложение, позволяющее писать, редактировать, отправлять небольшие электронные тексты.
Не отставали и сторонние разработчики, которые предлагали владельцам сотовых телефонов приложения, аналогичные установленным изначально, а также массу другого полезного и иногда бесполезного софта.
С появлением в 1997 году на рынке сотовой связи технологии WAP, позволяющей выходить в интернет с помощью мобильного телефона, количество программных приложений, как и их разработчиков, стало расти. Дело в том, что теперь поставить на телефон какую-либо программу стало гораздо удобнее и проще, так как ранее установка приложения могла быть осуществима лишь с помощью DATA-кабеля, соединяющего стационарный компьютер или ноутбук с мобильным телефоном. Стоит отметить, что в то время не каждая модель сотового телефона поставлялась в комплекте с DATA-кабелем, что ограничивало использование мобильных приложений.
Платные и бесплатные приложения
Независимо от того, для какого устройства используется та или иная программа, мобильные приложения можно подразделить на платные и бесплатные.
Бесплатные приложения, как правило, представляют собой достаточно простое ПО с ограниченным набором возможностей. Бесплатный софт зачастую предназначен для решения конкретной задачи (например, просмотр электронной почты). По мнению экспертов организации GetJar, бесплатные приложения в большинстве случаев используются владельцами телефонов непродолжительное время. Одна из причин такого поведения пользователей обусловлена тем, что работать сразу с несколькими открытыми бесплатными приложениями неудобно. Во-первых, это влияет на производительность, а значит и на продолжительность работы аккумулятора устройства. Во-вторых, пользователя просто может раздражать постоянный переход между программами (особенно на аппаратах с сенсорным экраном) и связанная с этим потеря времени.
Что же касается платных мобильных приложений, то они, наоборот, предлагают пользователю расширенные функциональные возможности для каждого отдельного программного продукта. Например, альтернативный пользовательский интерфейс SPB Mobile Shell для коммуникаторов на базе Windows Mobile предлагает пользователю несколько вариантов управления устройством и его программным обеспечением с помощью одного приложения. Кроме того, разработчики платного мобильного софта, как правило, предлагают возможность обновления ПО.
Бесплатных приложений для Apple и Google не останется
Бесплатная модель распространения приложений для смартфонов очень скоро прекратит существование. Об этом рассказал в июле 2017 года руководитель департамента мобильных разработок Artezio (Артезио), автор проекта Cost Track Игорь Есипович. По словам эксперта, на место бесплатной и условно-бесплатной модели придет система ежемесячной подписки, которая на данный момент для многих разработчиков становится приоритетной.
Немалую роль в росте популярности подписной модели играет политика Apple, которая делает ставку на ежемесячные отчисления, нежели на разовые доходы с продаж.
Эксперт отмечает, что пока в цифровых магазинах наибольшую прибыль генерируют проекты с условно-бесплатной моделью распространения.
Специалист считает, что со временем условно-бесплатная модель станет непопулярной, а основной доход разработчики будут получать с обновляемой подписки. При этом совершенно бесплатных приложений практически не останется.
Типы мобильных приложений
Также мобильные приложения можно подразделить на развлекательные (мультимедийные), коммуникационные, навигационные, справочные и прикладные. К развлекательному мобильному ПО можно отнести проигрыватели аудио- и видеофайлов, просмоторщики изображений и электронных книг, игры. Коммуникационные приложения отвечают за общение пользователя по телефону и SMS, его контакты в электронной почте, ICQ, социальных сетях. К навигационным программам относятся приложения, работающие с системой GPS, электронными картами и географическими координатами. К справочному ПО можно отнести различные словари и энциклопедии, базы данных с возможностью поиска. К прикладным приложениям можно отнести записные книжки, органайзеры, калькулятор, программы для работы с графикой и текстом.
Приватность
2021: Государственные мобильные приложения проанализированы на потенциальные риски приватности для пользователей
Согласно одному из исследований, многие государственные приложения содержат различные трекеры (включая рекламные трекеры и трекеры от социальных сетей), которые передают личные данные пользователей третьей стороне. Об этом 3 марта 2021 года сообщила компания «Доктор Веб». Трекеры в мобильных приложениях предназначены для сбора статистики и аналитики о пользователях, а также для сбора информации об ошибках, возникающих при работе приложений. При этом разработчики таких трекеров могут находиться за рубежом, что ограничивает возможности для контроля и предотвращения противоправных действий.
В оригинальном исследовании говорилось о потенциальных рисках приватности, которые исходят от рекламных SDK и AdMob от Google в частности. Отмечалось, что соответствующий модуль находится в приложениях «Госуслуги Югры», «ЕМИАС.ИНФО», «Check COVID-19», «Налоги ФЛ», «Личный кабинет предпринимателя», «ЕИС» и «Дневник МЭШ». В действительности его в них нет. Все указанные программы созданы с использованием инструментария разработки React Native, а также набора модулей React Native Firebase для него. И именно в этих модулях содержатся определенные строки с именами некоторых компонентов AdMob, из-за чего статический анализ мог ошибочно указать на наличие полноценного рекламного SDK.
Из всех проверенных приложений AdMob был найден лишь в «Госуслугах», однако и в этом случае опасения оказались напрасны: модуль здесь просто-напросто никак не задействован. Вероятнее всего, он попал в программу случайно. Дело в том, что «Госуслуги» — не классическое Android-приложение. Оно создано при помощи специализированного фреймворка Xamarin. Основная логика такой программы расположена в отдельных DLL-файлах, в то время как исполняемый DEX-файл приложения содержит Xamarin SDK. Чтобы код из DLL-файлов получил доступ к сервисам Google, требуются специальные плагины. Весьма вероятно, что код рекламного SDK AdMob попал в приложение как раз с одним из наборов таких плагинов.
И Xamarin SDK, и React Native могут применяться для упрощения кросс-платформенной разработки.
Еще один вопрос у исследователей вызвали модули сервисов AltBeacon и Estimote, найденные в приложениях «Иду в музей» и «Зарядье». Однако они лишь используются для работы со специальными устройствами — Bluetooth-маячками, устанавливаемыми в музеях для удобства пользователей. С их помощью, например, определяется, рядом с каким экспонатом находится посетитель. При этом модуль AltBeacon не отправляет телеметрию на удаленный сервер, в то время как модуль Estimote был модифицирован так, что собираемая им аналитика передается не на иностранный ресурс, а на сервер парка «Зарядье». Поэтому в данных случаях ни тот, ни другой модуль нельзя отнести к полноценным (и тем более опасным) трекерам.
Другой отмеченный в исследовании модуль — HockeyApp, содержащийся в приложении «Парковки Москвы». Относящийся к нему сервис аналитики был окончательно закрыт еще в 2019 году и давно не функционирует, поэтому к нему претензий быть не должно. Скорее всего, модуль попал в исследование по ошибке, поскольку в некоторых программах до сих пор остаются определенные следы от него.
В то же время, как и было указано в исследовании, многие из рассмотренных вирлабом программ действительно содержат SDK от Facebook. Однако данный модуль применяется, например, для регистрации учетных записей через социальную сеть, а также содержит такие функции как, например, «Поделиться». Фактов сбора чувствительной информации этим SDK не выявлено.
Казалось бы, волноваться не о чем. Но нашлась и ложка дегтя. В DrWeb отметили, что различные сервисы аналитики в основном оперируют обезличенными данными пользователей, что само по себе не так страшно. Исключениями являются рекламный идентификатор Google, а также точные данные о местоположении. И вот здесь уже появляются определенные риски для конфиденциальности. Все дело в том, что в ОС Android доступ к рекламному идентификатору может получить любое приложение. Предположим, что условная программа для онлайн-общения связала этот идентификатор с данными (именем, фамилией, адресом электронной почты, номером телефона), после чего передала эту информацию третьей стороне, у которой произошла утечка, и данные попали в интернет. Используя тот же самый рекламный идентификатор, эти сведения можно сопоставить с данными, полученными через модули аналитики (например, связать с информацией о местоположении вашего устройства, выполняемых в приложениях действиях). В результате появляется потенциальная опасность того, что вас будут отслеживать и как минимум знать, кто вы и где вы находитесь. А это само по себе уже немало для тех же маркетологов и рекламодателей. Что и говорить, для злоумышленников это тоже будет ценно.
Хорошая новость — в том, что обычно модули аналитики и трекеры не собирают точные данные о геолокации. Тем не менее, специалисты из вирусной лаборатории выяснили, что некоторые из них (при наличии доступа к соответствующей функции) все же это делают — возможно, для внутреннего использования. Например, модуль картографического сервиса Mapbox, применяющийся в ряде изученных приложений, собирает определенную телеметрию, в которую входит и точная геолокация. Однако при этом он не использует рекламный идентификатор Google, и поэтому такие данные можно считать обезличенными. Другой модуль — от сервиса Flurry — тоже собирает данные о местоположении, но лишь приблизительные. Для этого в самом SDK принудительно настраивается снижение точности данных перед их отправкой на сервер, что также нельзя расценивать как угрозу. При этом отмечается, что все трекинговые платформы имеют возможность отслеживать примерное местоположение при помощи IP-адреса, если, например, отсутствует доступ к геолокации.
А вот используемый в приложении «Московский транспорт» модуль сервиса Amplitude по сравнению с другими рассмотренными сервисами является наиболее спорным. Он не находится в российской юрисдикции, собирает точные данные о местоположении и позволяет отслеживать рекламные идентификаторы, что несет потенциальные риски раскрытия конфиденциальной информации. Кроме того, он записывает некоторые данные, вводимые пользователем, — например, о запрошенном маршруте, если не удалось его построить. Напрямую все эти действия не несут прямых рисков, однако для кого-то могут являться неприемлемыми. Тем более, что без этого модуля можно было бы легко обойтись.
Также стоит отметить, что все трекеры позволяют разработчикам отключать сбор данных о местоположении (который по умолчанию активен), но те такой функцией не воспользовались.
Основной вывод таков: трекеры и различные модули аналитики в большинстве исследованных программ не представляют прямой угрозы для приватности за исключением используемого в приложении «Московский транспорт» противоречивого модуля. Однако это справедливо для версий приложений, актуальных на момент анализа. Разработчики могут вносить определенные изменения в ПО, удаляя или добавляя сторонние модули, поэтому ситуация с собираемыми данными, приватностью пользователей и безопасностью государственных программ со временем может измениться.
Доктор Веб рекомендует:
1. Чтобы затруднить сервисам аналитики и рекламодателям возможность сбора информации, периодически надо менять рекламный идентификатор Android-устройства. Для этого надо зайти в системное меню настроек, перейти в раздел Google, выбрать «Реклама» и затем опцию «Сбросить рекламный идентификатор». Благодаря этому собранные данные из различных источников будет сложнее связать между собой.