Железная хватка Google

Перевод статьи «Google’s iron grip on Android: Controlling open source by any means necessary».

Железная хватка Google: контроль над открытым кодом Android всеми доступными способами

Код Android открыт (за исключением самых лакомых его кусочков).
Рон Амадео, 21.11.2013
t_android-lockup1
Aurich Lawson
Шесть лет назад, в ноябре 2007-го, было объявлено о запуске проекта «открытый код Android» (Android Open Source Project, AOSP). Самый первый iPhone вышел всего несколько месяцев назад, взбудоражив воображение публики и провозгласив эру современных смартфонов. И хотя Google были партнёром Apple по части производства приложений, они уже представляли себе, как могло бы выглядеть будущее, не будь у iPhone конкурентов. Вик Гундотра (Vic Gundotra), вспоминая взгляд Энди Рубина на судьбу Android, рассказывает:

Он утверждал, что если бы Google бездействовали, нас ждало драконовское будущее, будущее, в котором один человек, одна компания, одно устройство, один оператор стали бы нашим единственным возможным выбором.

Google ужасала перспектива того, что Apple будет контролировать нишу мобильных устройств. Поэтому для борьбы с iPhone в условиях отсутствия какого-либо надёжного плацдарма в мобильном мире был запущен Android — проект с открытым исходным кодом.
В то время у Google не было ничего, и каждый знак принятия, каждый кусочек рыночной доли были на счету. Google решили раздавать Android бесплатно и использовать его в качестве «троянского коня» для распространения своих сервисов. Посыл был таков: если поиск Google исчезнет с iPhone, люди перестанут пользоваться им и на десктопах. Android был «рвом», окружающим «крепость» поиска Google. Он служил для защиты онлайновых владений Google в мобильном мире.
chart32
Smartmo / Ron Amadeo
Сегодня все обстоит несколько иначе. Android увеличил свою долю на рынке смартфонов с нуля до почти 80 процентов. Возможно, Android победил в битве смартфонов, но победа Android — не обязательно победа Google. Поскольку код Android открыт, он, вообще-то, не принадлежит Google. Любой может взять его, клонировать и создать свою ветвь или альтернативную версию.
Как мы могли видеть в случае борьбы Windows Phone и Blackberry 10 за выживание, ключом к победе является набор существующих приложений, а огромное количество установок Android говорит о том, что уж их-то у него навалом. Если кто-то создаст клон Android, он изначально будет совместим с миллионами существующих приложений; потербуется только создать свой магазин программ и залить их все туда. Теоретически, вы получите ОС, не зависящую от Google и с кучей приложений, причем буквально за один день. Если какая-то компания, отличная от Google, нашла бы способ улучшить что-то в Android, она смогла бы стать серьёзным соперником, и, возможно, пошатнуть позиции Google в мире смартфонов. И это главная угроза нынешнему положению Google: успешный альтернативный дистрибутив Android.
Несколько компаний уже делают попытки отделить Google от Android. Самая успешная и заметная альтернативная версия Android — Kindle Fire от Amazon. В Amazon берут AOSP, отбрасывают все привычные дополнения от Google и предоставляют свой собственный магазин приложений и контента, браузер, облачное хранилище и почту. Весь Китай тоже отбрасывает Google-специфичную часть Android. Большая часть сервисов Google там запрещена, поэтому единственным выходом является создание альтернативных версий. В обоих случаях используется код Android авторства Google, но последние не получают ничего взамен.
Легко раздавать что-то бесплатно, когда ты находишься на последних местах с нулевой долей рынка, как Android во времена своего старта. Однако, когда ты на первом месте, быть таким же открытым и доброжелательным немного сложнее. Android прошел путь от того, что защищало Google до того, что само по себе стоит защищать. Мобильный рынок — будущее интернета, и контроль над крупнейшей в мире мобильной платформой несёт множество преимуществ. Но теперь уже слишком сложно запихнуть джина открытого кода назад в лампу, и возникает вопрос: как контролировать проект с открытым исходным кодом?
Google всегда старались защитить себя от появления альтернативных версий Android. То, что многие называют «Android» на самом деле является одним из двух: либо открытой частью из AOSP, являющейся основой Android, либо частью с закрытым кодом, то есть совокупностью приложений под маркой Google. И хотя в Google никогда не пойдут до конца и не закроют Android полностью, компания, похоже, делает всё возможное, чтобы заполучить доступ к рычагам влияния на существующий открытый проект. И основной метод компании — перевод все большего числа приложений под крыло Google с закрытием исходного кода.

Постепенное закрытие кода

Закрытые приложения Google существовали всегда. Изначально они состояли в основном из клиентов для онлайновых сервисов Google, таких как Gmail, Карты, Talk и YouTube. Когда у Android не было ощутимой рыночной доли, Google было вполне удобно поддерживать только эти приложения, в то время как остальной Android развивался как открытый проект. Однако, когда Android стал центром мобильной разработки, Google решили, что им нужно больше контроля над публичным открытым кодом системы.
Для некоторых из этих приложений, возможно, еще существуют аналоги в AOSP, но как только запускается проприетарная версия, вся работа над AOSP-версией останавливается. Меньше открытого кода — значит, больше работы для конкурентов Google. И несмотря на то, что нельзя просто взять и убить открытое приложение, можно превратить его в «покинутое», перенеся всю разработку в модель с закрытым кодом. Практически всегда, когда Google делают ребрендинг приложения и публикуют новый компонент Android в Play Store, это означает, что код был закрыт, и AOSP-версия мертва.

Поиск

searchA
Начнём с приложения «Поиск», являющегося отличным примером того, что происходит, когда Google дублирует функционал AOSP.
В августе 2010 Google запустили Voice Actions. Параллельно, они опубликовали в Android Market приложение «Поиск Google». Это были времена Froyo. Картинка выше показывает последние версии поиска AOSP и поиска Google, запущенные на Android 4.3. Как видите, поиск AOSP застрял где-то в эпохе Froyo (Android 2.2). Как только Google успешно запускают приложение с закрытым кодом, они немедленно забывают про открытую версию. В версии Google есть голосовой поиск, поиск аудио, TTS, сервис ответов, а также Google Now, фирменный сервис предикативных подсказок. Версия AOSP может искать в Вебе и на устройстве и… всё.

Музыка

musicA
Google впервые продемонстрировали свой облачный музыкальный сервис во время Google I/O в 2010, и, разумеется, примерно тогда музыкальный проигрыватель AOSP оказался застывшим во времени. До сих пор он выглядит и работает как приложение времен Froyo.
Play Music получил доступ к облачному хранилищу музыки Google, огромному магазину записей и службе подписок. Play Music прошел несколько стадий редизайна, получил эквалайзер и поддержку Chromecast. Эти два музыкальных приложения сейчас настолько сильно отличаются, что сложно представить, что когда-то они служили одной цели.

Календарь

t_ic_launcher_calendar2
Календарь Google стал одним из недавних приложений, прошедших «обработку» закрытием кода. То, как это преподносится сообществу Android всегда довольно забавно: «Стандартный календарь теперь доступен всем! Теперь мы можем получать обновления через Play Store! Появилось больше возможностей! И да, кстати, исходный код теперь закрыт».
Поскольку разделение произошло недавно, разница между двумя версиями ещё небольшая. Календарь Google синхронизирует уведомления между устройствами и получил новую красивую иконку. Но не думаю, что календарь AOSP в ближайшее время сможет похвастаться такими же обновлениями.

Клавиатура

keyboard
Скриншоты настроек клавиатуры, показывающие недостающие функции.
Даже клавиатура не защищена от постепенного закрытия кода. Несколько месяцев назад Google добавили в стандартную клавиатуру ввод слов жестами а-ля Swype и опубликовали её в Play Store под названием «Клавиатура Google». Угадайте, где её исходный код? Точно не в AOSP. На картинке выше вы можете видеть настройки обоих клавиатур. В клавиатуре Google есть опция ввода слов жестами, а в AOSP нет: последняя была позабыта, как только была выпущена клавиатура Google.

Галерея/камера

camera3
Камера и Галерея — это на самом деле один файл APK (файл пакета приложения Android). Версия AOSP называется «Gallery2.apk», а версия Google называется «GalleryGoogle.apk». Как видно на картинке выше, так называемые «фотосферы» доступны только в версии Google: этот инновационный режим съемки не доступен в AOSP. В открытой версии остутствует и интеграция с альбомами Google+. В закрытой версии альбомы из облака Google+ отображаются наравне с локальными.
Правда тут надо отдать Google должное. Хотя версия AOSP и не поспевает в плане возможностей, новый дизайн, представленный в версии 4.3 перекочевал в исходный код Android.

Будущее

hangouts2
Хотя об этом еще не было объявлено, следующим приложением, выставленным за дверь, станет стандартное приложение обмена SMS. Хотя ходят слухи о том, что Google Hangouts будет просто включать в себя обмен текстовыми сообщениями как и iMessage, на деле это будет означать, что SMS-функционал Android переедет в закрытое приложение. Как только Google осуществят переход (я думаю, это произойдет через одну-две версии Android), вы увидите, что приложение SMS исчезнет из приложений по умолчанию, так же как это произошло со стандартным веб-браузером, убитым во славу Chrome (впрочем, большая часть Chrome по-прежнему открыта).
Когда SMS интегрируют в Hangouts, приложение обмена сообщениями AOSP будет полностью забыто. Программа обмена сообщениями уже, кажется, на полпути к забвению (в ней не было никаких существенных обновлений со времен редизайна для Android 4.0.). Поэтому когда это наконец случится, вы знаете подтекст: открытое приложение обмена SMS отправляется на свалку.
n5-apps-640x657
Слева: KitKat, приложение «Google Photos». Справа: нынешняя иконка «G+ Photos». TuttoAndroid/Ron Amadeo
Следующей на разделочный стол попадет открытая Галерея. В просочившихся скриншотах KitKat, следующей версии Android, есть новая иконка под названием «Google Photos». Иконки «Gallery», которая, следуя алфавитному порядку, должна быть между «E-mail» и «Gmail», там не наблюдается. Хотя мы ещё не видели Google Photos, его иконка такая же как у нынешнего приложения «G+ Photos». Похоже на то, что Галерея из AOSP умрёт, и будет замещена программой с закрытым исходным кодом, сильно привязанной к Google+. Это предельное выражение новой политики «огороженного сада» в исполнении Google.

Удержание производителей

В то время как Google старается изо всех сил обесценить открытую кодовую базу Android, контроль над программной составляющей не является единственным направлением активных действий компании.
Если некая другая компания сможет собрать свою собственную ветку AOSP, клонировать приложения Google и создать, таким образом, жизнеспособного конкурента Adnroid от Google, у нее возникнут сложности с поиском того, кто будет делать устройства под эту ОС. В условиях открытого рынка было бы достаточно связаться с OEM-производителем устройств на Android и убедить его переключиться на свою систему. Однако Google внесли свои коррективы в этот простой сценарий. Настоящая сила Google на мобильном рынке состоит в контроле над своими приложениями: Gmail, Карты, Google Now, Hangouts, YouTube и Play Store. Это приложения-убийцы в арсенале Android, и все крупные производители (да и маленькие тоже) хотят иметь эти приложения на своих телефонах. Поскольку их код закрыт, их нужно лицензировать у Google. И тут вы можете представить себе сцену из «Крёстного отца», ведь эти приложения не достанутся им просто так, без некоторых встречных требований.
t_andr2oid-640x284
Хотя это может и не являться официальным требованием, но получение лицензии на приложения Google пройдёт гораздо проще, если вы вступите в Открытый альянс производителей телефонов (Open Handset Alliance, OHA). OHA — это группа компаний, заинтересованная в производстве устройств на Android (Android от Google), и ее членам юридически запрещено производить устройства, не одобренные Google. Именно так, вступление в OHA требует, чтобы компания была полностью лояльна Google и поклялась никогда не производить устройства, работающие на конкурирующей ветке Android.
Компания Acer попала под действие этого требования, когда попыталась продавать в Китае устройства на ОС Aliyun компании Alibaba. Aliyun — это ветка Android, и когда в Google узнали про это, они приказали Acer свернуть проект, пригрозив лишением доступа к приложениям Google. Google даже опубликовали публичную запись об этом в своем блоге:

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

Это делает жизнь очень сложной для единственной компании, имеющей смелость продавать на Западе свою собственную версию Android: компании Amazon. Поскольку ОС Kindle считается «несовместимой» версией Android, ни один из крупнейших OEM-производителей не имеет права производить их Kindle Fire. Поэтому когда Amazon ищут производителей для своего следующего планшета, им приходится сразу же вычёркивать Acer, Asus, Dell, Foxconn, Fujitsu, HTC, Huawei, Kyocera, Lenovo, LG, Motorola, NEC, Samsung, Sharp, Sony, Toshiba и ZTE из списка потенциальных партнеров. Сейчас Amazon производит Kindle на мощностях Quanta Computer, компании, известной в первую очередь производством ноутбуков. У Amazon, очевидно, не такой уж большой выбор.
Для OEM-производителей всё это значит, что они не могут постепенно переходить с Android от Google на другую ветвь. Как только они отгрузят первое устройство, работающее на ОС конкурента, их ждёт «смертельный поцелуй», вылет из семьи Android и полный разрыв отношений. Это целенаправленно делает переход на альтернативную ветку Android ужасной перспективой для любого уважающего себя производителя устройств на Android. Ему придется порвать все связи с Google, и пути назад больше не будет.
Любой OEM-производитель, пытающийся получить лицензию на приложения Google должен пройти тесты Google на «совместимость», чтобы получить такое право. Совместимость призвана дать гарантию, что все приложения из Play Store будут работать на вашем устройстве. А для Google «совместимость» — это ещё и некое размытое понятие, которое разработчик Android однажды негласно описал как «клуб, заставляющий [OEM] делать то, что мы хотим». Хотя у Google сейчас есть автоматизированные инструменты для определения степени «совместимости» вашего устройства, получение лицензии на приложения Google всё равно требует, чтобы компания лично связалась с Google и, образно выражаясь, «поцеловала кольцо». Большая часть этого процесса представляет собой набор секретных соглашений и закрытых контрактов, поэтому информацию мы получаем в основном из публичных перебранок и/или судебных исков между Google и потенциальными дезертирами лагеря Android (см. случай с Acer).
Другой точкой контроля является то, что приложения Google лицензируются как одно целое. Поэтому если вам нужны Gmail и Maps, вам придётся взять также Google Play Services, Google+ и всё остальное, что Google сочтёт нужным включить в пакет. Компания Skyhook узнала об этом довольно болезненным образом, когда попыталась создать конкурирующую службу геолокации для Android. Переход на сервис от Skyhook значил бы, что Google не смогла собирать данные о местоположении своих пользователей. Это было плохо для Google, поэтому сервис Skyhook был объявлен «несовместимым». OEM-производителям, которые хотели использовать приложения Google, было запрещено устанавливать программу Skyhook. Skyhook подали в суд, но дело всё ещё рассматривается.

Разведка рынка собственным ПО

Для большинства OEM идея покинуть экосистему Google, оставаясь при этом успешными — всего лишь несбыточная мечта. Одним из способов для производителей поэкспериментировать с существованием без Google, не навлекая на себя гнев Mountain View, является разработка альтернатив приложениям Google. Это те самые предустановленные производителем приложения, которые многими из нас воспринимаются как ненужный балласт. Такие программы являются попыткой OEM-производителей воспроизвести все базовые приложения Google, просто чтобы посмотреть, насколько сложно было бы жить за пределами «огороженного сада».
lolsamsung
Samsung мечтает о сущестововании без Google.
Samsung здесь особенно «преуспел», создав свою собственную систему учётных записей, механизм синхронизации и магазин приложений. Они также поддерживают наиболее полный набор альтернатив приложениям от Google. Многие из них, например Internet, E-mail и Calendar, основаны на коде AOSP, но Samsung продолжили добавлять в них возможности и после того, как Google покинули их в пользу своих закрытых альтернатив.
На телефоне с установленными приложениями Google два календаря выглядят глупо и избыточно. Но многие OEM рассматривают собственное ПО как важный стратегический резерв, «план Б», на случай если дела пойдут совсем плохо. Если в Google сделают что-то из ряда вон выходящее, и OEM будет вынужден покинуть альянс, у компании должно быть хотя бы что-то, что можно показать своим будущим покупателям. OEM включают такое ПО в свои телефоны уже сейчас (почему бы и нет?), а взамен получают ценную информацию — отзывы пользователей. Хотя это создает избыточность и сбивает с толку пользователей, кое-кто может даже начать пользоваться какой-либо из базовых программ в версии от OEM-производителя.
С таким большим набором альтернативных приложений, может показаться, что Samsung находится всего в двух шагах от того, чтобы сбежать с корабля в любой момент, но воспроизведение приложений Google — это лишь малая часть той титанической работы, которую потребовалось бы проделать, чтобы высвободиться из экосистемы Google. Сильная сторона Android, которая по-настоящему интересует OEM — это огромный выбор сторонних приложений. В Google знают, что это их главная слабость, и компания уже начала работу по привязке к Google всей экосистемы приложений.

Захват сторонних приложений

t_google-plus-services
Ранее мы уже рассмотривали возможные последствия обновления Play Services, и одним из них является появление мощного оружия в борьбе со сторонними ветками Android. Play Services — это закрытое приложение, являющееся собственностью Google и лицензируемое как часть пакета приложений Google. Любой функционал, который переходит из «обычного» Android в Google Play Services автоматически переходит из разряда «открытое ПО» в разряд «закрытое». Ловкий трюк Google состоит в том, что это приложение не только привлекает пользователей эксклюзивными возможностями, реализованными через закрытый код, но и привязывает производителей стороннего ПО к проприетарным API Google.
Кажется, что отобрать экосистему Android-приложений у Google сравнительно просто: достаточно просто запустить свой магазин приложений, убедить разработчиков загрузить туда свои программы, и дело в шляпе. Но API Google, поставляемые с Play Services, не допустят такого развития событий, заставляя разработчиков включать в свои приложения элементы, зависящие от Google. Стратегия Google в отношении Google Play Services состоит в том, чтобы превратить «экосистему приложений Android» в «экосистему Google Play», делая жизнь разработчика как можно проще на устройствах, одобренных Google, и как можно сложнее — на всех остальных.
Если вы используете API Google и попытаетесь запустить своё приложение на Kindle или на любой другой не-Google версии AOSP, то вас ждёт сюрприз: ваше приложение не будет работать. Android от Google занимает практически весь рынок Android, а разработчики заинтересованы в лёгкости создания программ, стабильной их работе и привлечении широкой аудитории. API Google позволяют добиться всего этого, правда побочным эффектом является то, что ваше приложение теперь зависит от того, есть ли на устройстве лицензия на Google Apps.

API Карт Google

API Карт Google позволяет вам использовать картографические данные Google в своем приложении. Это очень удобно для случаев, когда нужно, например, отобразить погоду поверх карты или отметить точку в программе для путешествий. Есть лишь одна проблема: это одна из служб Google, и она не включена в Android. Если вы полагаетесь на API Карт, ваше приложение не будет работать на устройствах, не одобренных Google.
В ответ на это Amazon пришлось лицензировать картографические данные у Nokia и создавать свой работающий клон API Карт Google. У компании есть даже страничка с инструкциями по миграции приложений с Карт Google. Это в очередной раз показывает, как важно для Google сделать жизнь программиста лёгкой в своей собственной экосистеме и предельно сложной вне её. Если вы хотите, чтобы ваша программа работала на Kindle, вам придётся поддерживать два картографических API параллельно.
Это ужасная ситуация для того, кто делает свою ветку Android, в нашем случае это Amazon, которым сейчас либо придется платить лицензионные отчисления Nokia до скончания веков, либо самим рисовать карту всей планеты (хотя гораздо проще было бы воспользоваться открытыми данными OpenStreetMap — прим. перев.). Amazon теперь приходится ещё и поспевать за бешеными темпами разработки Google: Maps API Amazon поддерживает API Карт Google версии 1, но Google уже работает с версией 2. Если вы разработчик и зависите от какой-либо новой возможности, включённой в API Карт версии 2, знайте, что Amazon её ещё не поддерживает. Теперь на вас свалилось ещё больше работы.

Облачный обмен сообщениями Google

gcm-logo
Облачный обмен сообщениями Google (Google Cloud Messaging, GCM) — это самый простой способ доставки уведомлений на Android, но вы никогда не увидите его в AOSP. GCM был добавлен в Play Services недавно, об этом было объявлено на I/O 2013, и сейчас он включает не только получение уведомлений, но и отправку сообщений назад на сервер. Эта возможность стала основой для новой функции синхронизации уведомлений между устройствами. Разработчики часто используют GCM для показа важных новостей или чтобы сообщить приложениям о том, что доступны новые данные, и необходимо произвести синхронизацию.
Можно утверждать, что Карты Google использует сравнительно небольшое число приложений, однако гораздо большее их число использует уведомления. Это ещё одна возможность, которую Amazon пришлось скопировать, чтобы не оказаться за бортом. Их версия называется «Amazon Device Messaging» и работает только на устройствах от Amazon. Как и в случае API Карт, вам придётся проделать дополнительную работу и отдельно протестировать свой продукт для сравнительно маленькой группы пользователей. В версии от Amazon может не быть абсолютно всех функций GCM, поэтому вам придётся приложить дополнительные усилия, чтобы найти пути обхода этих ограничений.

API геолокации

gps-location
На I/O 2013 Google показали обновлённые API геолокации Android и выпустили их как часть Google Play Services. Другими словами, первоклассные службы геопозиционирования Android теперь стали закрытым продуктом. Проводя аналогии с историями, описанными выше, можно предположить, что открытый код стека геопозиционирования теперь будет доживать свои последние дни в забвении. Новые функции включают в себя Fused Location Provider, «полностью переписанный» алгоритм геолокации, Geofencing (возможность задавать на карте участки, попадание пользователя в которые будет запускать события внутри программы) и определение вида активности, использующее данные акселерометра и хитрые алгоритмы, чтобы определить, что делает пользователь: идёт, едет на велосипеде или ведёт автомобиль — и всё это без использования GPS.
Совершенно логично было включить API Карт и Google Cloud Messaging в проприетарное приложение, поскольку эти службы работают на серверах Google. Однако, перемещение туда всего стека геопозиционирования выглядит как полномасштабный захват власти со стороны Google. Теперь есть два способа определения местоположения: хороший, энергоэффективный способ Google с закрытым кодом и посредственный, активно пожирающий аккумулятор способ — с открытым.

Покупки внутри приложений

Лучший метод реализации покупок внутри приложений доступен через Google Play Store. Однако, если разработчик хочет, чтобы его приложение работало на Kindle или, например, в Китае, ему придется искать другое решение. Это ещё одна функция, которую вам придётся клонировать, если вы хотите получить жизнеспособную ветвь AOSP, и Amazon пришлось сделать это, создав Amazon In-App Purchasing API. Даже Samsung пошли тем же путём, создав свой API покупок внутри приложений два года назад.

Игры Play

t_unna2med
Play Games — это ещё один проприетарный API, который решает массу сложных проблем для мобильных разработчиков. Он предоставляет доступ к учётным записям пользователей, таблицам рекордов, достижениям, сохранением в облако, схемам борьбы с пиратскими копиями и, в случае Android, мультиплейеру в реальном времени. Самое замечательное в этом то, что работает он практически везде: в Вебе, под iOS и под Android. Везде, кроме AOSP, который, как вы догадались, не поддерживается. Это ещё одна функция, от которой может зависеть стороннее приложение, и альтернативному дистрибутиву Android приходится её воспроизводить своими силами.
У Amazon есть набор игровых API под названием «GameCircle», но они не являются полноценной заменой Play Games, в отличие от связки «Amazon Maps API — API Карт Google». Разработчику придётся потратить время на то, чтобы заставить работать ещё одну, совершенно новую, реализацию мультиплейера.

Поддержание зависимости через поддержку iOS

Часть стратегии Google, чем-то напоминающая коварный замысел злого гения, состоит в том, что 90 процентов API Google поддерживаются и на iOS. Теперь представьте себя в шкуре разработчика, решающего, использовать API Google или нет: изрядная часть решений Google приедлагают вам лучшие в мире юзабилити, функциональность и простоту реализации. Google поддерживает две основные мобильные платформы, покрывая подавляющую часть потенциальной пользовательской базы. Единственный минус состоит в том, что всё это не будет работать с клонами Android, но ведь любой из этих клонов — всего лишь крохотная часть вашей потенциальной аудитории.
Большинство разработчиков вероятнее всего скажет «да» API Google, и следующим вопросом будет, что они станут делать с Kindle и другими клонами Android? Разработчикам придётся самим искать замену нужному API, и эта замена может быть устаревшей или работать с их программой неудовлетворительно. Если это альтернативное решение не является полноценным аналогом, то разработчику придётся искать способы обхода существующих ограничений. Поскольку пользовательская база таких решений гораздо меньше существующей базы пользователей iOS и Android, есть ли вообще смысл в освоении этой отдельной экосистемы? Будет ли такое вложение времени прибыльным? Проще будет сказать «к чертям все эти клоны» и не морочить себе голову дополнительной работой и тестированием.

Samsung никуда не уйдёт

В этом разделе я объясню, почему Amazon могут жить без Google, а Samsung — нет. В то время как Amazon являются де-факто машиной по копированию API Google, у Samsung нет такого же количества решений для сторонних разработчиков, которые в данный момент полагаются в основном на Google. Любые заявления о том, что Samsung покидают экосистему Google лишены смысла, пока они не начнут лицензировать картографические данные или создавать свой API облачных уведомлений.
Amazon проделал в этом плане огромную работу, чтобы не отстать от Google, но Amazon — это компания, рождённая в Интернете. Их сильная сторона — серверы и ПО, поэтому создание кучи облачных сервисов для них не составляет проблемы. А Samsung Electronics, как и следует из названия, — компания по производству электроники. Создание облачной инфраструктуры и набора API — это не их стихия. Поэтому Amazon может создать всё необходимое за несколько лет, основываясь на своей платформе облачных сервисов, а для Samsung эта задача будет гораздо сложнее.
Впрочем, Samsung уже немного придвинулись вперёд. Как уже было сказано, у компании есть свой SDK для покупок внутри приложений. Любопытно также, что у них есть SDK и для рекламы, но реклама всё-таки приносит реальные деньги. Google, например, поддерживают свою рекламную сеть на Android, iOS, клонах Android и даже на Windows Phone.

Открытость вида «смотри, но не трогай»

Если некой компании захотелось бы сделать свою ветвь Android и создать коммерчески жизнеспособного конкурента Google, ей пришлось бы воспроизвести всё, о чём было написано в этой статье. Но даже в этом случае она достигла бы лишь паритета. Кроме всего прочего, ей необходимо было бы убедить пользователей перейти с Android от Google на свою собственную ветку.
Google делают всё сами. Компания получает Карты и все свои облачные сервисы практически бесплатно. Любой компании, желающей пойти по тому же пути, скорее всего придётся привлекать сторонние службы. То, что Amazon приходится лицензировать карты Nokia — отличный тому пример. Google продают рекламу на своих картах, и это приносит им деньги, в то время как Amazon приходится платить за каждого пользователя своих карт. С такой кардинально противоположной ситуацией в плане источников дохода любому производителю клона Android придётся встречаться постоянно. Службы Google стоят дешевле, чем ничего, а любому их конкуренту придётся в конце концов платить ежемесячную ренту кому-то ещё.
Если компании даже и удастся создать свою ветвь Android и сделать что-то выдающееся вне экосистемы Google, есть ещё одна преграда: почти все производители связаны обязательствами, запрещающими им делать устройства, работающие на другой ОС. Даже если эта новая производная Android будет лучше оригинала, выход из экосистемы Google для OEM-производителей означает массу забот и рисков, перевешивающих возможную прибыль.
Хотя Android и открыт, эта открытость скорее из разряда «смотри, но не трогай». Вы можете вносить свой вклад в Android, можете использовать его для своих маленьких домашних проектов, но практически всегда удача будет не на стороне того, кто отважится использовать Android без благословения Google. Как только вы попытаетесь научить Android чему-то, что Google не одобряет, на вас обрушатся все несчастья этого мира.

6 comments:

  1. aleksha says:

    Ну чо, спасибо за перевод интересной статьи!

  2. glesik says:

    Пожалуйста! Надеюсь, получилось читабельно.

  3. Grin says:

    Спасибо за перевод!

    • glesik says:

      Статья блестящая, на мой взгляд, надеюсь не испортил.

  4. smartov says:

    Спасибо за перевод. Хотел сам перевести но решил сначала поискать не сделал ли кто-то уже.

    • glesik says:

      Не за что! Если хотите, можете улучшить/исправить и опубликовать у себя, тут все под лицензией BY-NC-SA (впрочем, я вообще не уверен, что имею право ставить свою лицензию на перевод без согласования с автором).

Your comment: