Google стремится продвигать расовую справедливость для черных сообществ. Смотри как.
Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Часто задаваемые вопросы

На этой странице представлены ответы на некоторые часто задаваемые вопросы (FAQ).

Открытый источник

Что такое проект Android с открытым исходным кодом?

Android Open Source Project (AOSP) относится к людям, процессам и исходному коду, которые составляют Android.

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

Почему мы открыли исходный код Android?

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

Какой проект с открытым исходным кодом Android?

Google курирует разработку основной платформы Android с открытым исходным кодом и работает над созданием надежных сообществ разработчиков и пользователей. По большей части исходный код Android лицензируется по разрешающей лицензии Apache License 2.0, а не по лицензии с авторским левом. Мы выбрали лицензию Apache 2.0, поскольку считаем, что она способствует широкому распространению программного обеспечения для Android. Для получения дополнительной информации см. Лицензии .

Почему Google отвечает за Android?

Запуск программной платформы сложен. Открытость жизненно важна для долгосрочного успеха платформы, потому что открытость привлекает инвестиции от разработчиков и обеспечивает равные условия игры. Платформа также должна быть привлекательным продуктом для пользователей.

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

Убедившись в успехе Android среди пользователей, мы помогаем обеспечить жизнеспособность Android как платформы и проекта с открытым исходным кодом. В конце концов, кто хочет, чтобы исходный код был неудачным продуктом?

Цель Google - обеспечить успешную экосистему вокруг Android. Мы открыли исходный код Android, чтобы каждый мог модифицировать и распространять программное обеспечение в соответствии со своими потребностями.

Какова общая стратегия Google по разработке продуктов для Android?

Мы выпускаем отличные устройства на конкурентном рынке. Затем мы включаем инновации и улучшения, которые мы сделали, в основную платформу в качестве следующей версии.

На практике это означает, что команда разработчиков Android фокусируется на небольшом количестве «флагманских» устройств и разрабатывает следующую версию программного обеспечения Android для поддержки этих выпусков продукта. Эти ведущие устройства поглощают большую часть риска, связанного с продуктом, и прокладывают путь для широкого сообщества OEM-производителей, которые разрабатывают больше устройств, использующих преимущества новых функций. Таким образом, мы гарантируем, что платформа Android развивается в соответствии с потребностями реальных устройств.

Как разрабатывается программное обеспечение для Android?

Каждая версия платформы Android (например, 1.5 или 8.1) имеет соответствующую ветку в дереве с открытым исходным кодом. Самая последняя ветка считается текущей стабильной версией ветки. Это отрасль, которую производители портируют на свои устройства. Эта ветка всегда готова к выпуску.

Одновременно существует текущая экспериментальная ветвь, в которой разрабатываются спекулятивные материалы, такие как крупные функции следующего поколения. Исправления ошибок и другие дополнения могут быть включены в текущую стабильную ветку из экспериментальной ветки в зависимости от ситуации.

Наконец, Google работает над следующей версией платформы Android совместно с разработкой флагманского устройства. Эта ветвь тянет изменения от экспериментальных и стабильных ветвей соответственно.

Для получения дополнительной информации см. Codelines, ветви и выпуски .

Почему части Android разрабатываются в частном порядке?

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

Чтобы решить эту проблему, некоторые части следующей версии Android, включая API-интерфейсы базовой платформы, разрабатываются в частной ветке. Эти API представляют собой следующую версию Android. Наша цель - сосредоточить внимание на текущей стабильной версии исходного кода Android, пока мы создаем следующую версию платформы. Это позволяет разработчикам и OEM-производителям использовать одну версию, не отслеживая незаконченную будущую работу, чтобы не отставать. Другие части системы Android, не связанные с совместимостью приложений, разрабатываются открыто. Мы намерены перенести больше этих частей в открытую разработку с течением времени.

Когда выпускаются исходные коды?

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

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

Что связано с выпуском исходного кода для новой версии Android?

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

Когда релиз одобрен регулирующими органами и операторами, производитель начинает массовое производство устройств, и мы начинаем выпускать исходный код.

Одновременно с массовым производством команда Google начинает несколько усилий по подготовке релиза с открытым исходным кодом. Эти усилия включают в себя внесение окончательных изменений API, обновление документации (чтобы отразить любые изменения, например, во время квалификационного тестирования), подготовку SDK для новой версии и запуск информации о совместимости платформы.

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

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

Как AOSP относится к программе совместимости Android?

Android Open Source Project поддерживает программное обеспечение Android и разрабатывает новые версии. Поскольку это программное обеспечение с открытым исходным кодом, это программное обеспечение может использоваться для любых целей, включая разработку устройств, несовместимых с другими устройствами на основе того же источника.

Функция Программы совместимости Android заключается в определении базовой реализации Android, которая совместима со сторонними приложениями, написанными разработчиками. Устройства, совместимые с Android, могут участвовать в экосистеме Android, включая Google Play; устройства, которые не соответствуют требованиям совместимости, существуют за пределами этой экосистемы.

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

Как я могу внести свой вклад в Android?

Вы можете сообщать об ошибках, писать приложения для Android или вносить исходный код в Android Open Source Project.

Существуют ограничения на виды кода, которые мы принимаем. Например, кто-то может захотеть добавить альтернативный API приложения, такой как полная среда на основе C ++. Мы отказались бы от этого вклада, потому что Android поощряет запуск приложений во время выполнения ART. Точно так же мы не будем принимать материалы, такие как библиотеки GPL или LGPL, которые несовместимы с нашими целями лицензирования.

Мы призываем тех, кто заинтересован в предоставлении исходного кода, связаться с нами по каналам, перечисленным на странице сообщества Android, перед началом любой работы. Для получения дополнительной информации см. Содействие .

Как мне стать коммиттером Android?

В Android Open Source Project на самом деле нет понятия коммиттера . Все материалы (в том числе созданные сотрудниками Google) проходят через веб-систему, известную как Gerrit, которая является частью процесса разработки Android. Эта система работает в тандеме с системой управления исходным кодом git для чистого управления вкладами исходного кода.

После отправки изменения должны быть приняты назначенным утверждающим лицом. Утверждающие обычно являются сотрудниками Google, но одни и те же утверждающие несут ответственность за все представления независимо от их происхождения.

Для получения дополнительной информации см. Отправка исправлений .

Вернуться к началу

Совместимость

Что такое Android-совместимость?

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

Другими словами, совместимость является необходимым условием для участия в экосистеме приложений Android. Любой может использовать исходный код Android. Но если устройство несовместимо, оно не считается частью экосистемы Android.

Какова роль Google Play в совместимости?

Производители устройств с Android-совместимыми устройствами могут стремиться лицензировать клиентское программное обеспечение Google Play. Лицензированные устройства становятся частью экосистемы приложений Android, позволяя их пользователям загружать приложения разработчиков из каталога, доступного для всех совместимых устройств. Лицензирование недоступно для несовместимых устройств.

Какие типы устройств могут быть совместимы с Android?

Программное обеспечение Android можно переносить на множество различных устройств, включая те, на которых сторонние приложения не будут работать должным образом. Документ определения совместимости Android (CDD) содержит описание конкретных конфигураций устройств, которые считаются совместимыми.

Например, хотя исходный код Android можно переносить на телефон без камеры, CDD требует наличия камеры на всех телефонах. Это позволяет разработчикам полагаться на согласованный набор возможностей при написании своих приложений.

CDD продолжает развиваться, отражая реалии рынка. Например, версия 1.6 CDD поддерживает только мобильные телефоны. Но версия 2.1 позволяет устройствам опускать аппаратное обеспечение телефонии, что обеспечивает совместимость с не телефонными устройствами, такими как музыкальные проигрыватели в стиле планшета. Внося эти изменения, мы также расширяем Google Play, чтобы позволить разработчикам сохранять контроль над тем, где их приложения доступны. Чтобы продолжить пример телефонии, приложение, которое управляет текстовыми сообщениями SMS, бесполезно на медиаплеере, поэтому Google Play позволяет разработчику ограничивать это приложение исключительно для телефонных устройств.

Если мое устройство совместимо, имеет ли оно автоматический доступ к Google Play и брендингу?

Нет, доступ не автоматический Google Play - это сервис, управляемый Google. Достижение совместимости является обязательным условием для получения доступа к программному обеспечению Google Play и брендинга. После того, как устройство будет признано совместимым с Android , его производитель должен заполнить контактную форму, включенную в лицензирование Google Mobile Services, чтобы получить доступ к Google Play. Мы свяжемся с вами, если сможем вам помочь.

Если я не производитель, как я могу получить Google Play?

Google Play лицензируется только для производителей мобильных телефонов. По вопросам, связанным с конкретными случаями, обращайтесь по адресу android-partnerships@google.com .

Как я могу получить доступ к приложениям Google для Android, таким как Карты?

Приложения Google для Android, такие как YouTube, Google Maps и Gmail, являются свойствами Google, которые не являются частью Android и лицензируются отдельно. Свяжитесь с android-partnerships@google.com для запросов, связанных с этими приложениями.

Совместимость обязательна?

Нет. Программа совместимости с Android не является обязательной. Исходный код Android открыт, поэтому любой может использовать его для создания любого устройства. Однако, если производители хотят использовать имя Android в своих продуктах или хотят получить доступ к Google Play, они должны сначала продемонстрировать, что их устройства совместимы .

Сколько стоит сертификация совместимости?

Там нет стоимости для получения совместимости Android для устройства. Compatibility Test Suite имеет открытый исходный код и доступен любому для тестирования устройства.

Сколько времени занимает совместимость?

Процесс автоматизирован. Compatibility Test Suite создает отчет, который может быть предоставлен Google для проверки совместимости. В конце концов мы намереваемся предоставить инструменты самообслуживания для загрузки этих отчетов в общедоступную базу данных.

Кто определяет определение совместимости?

Google отвечает за общее направление Android как платформы и продукта, поэтому Google поддерживает Документ определения совместимости (CDD) для каждого выпуска. Мы разрабатываем CDD для новой версии Android, консультируясь с различными производителями, которые предоставляют информацию.

Как долго будет поддерживаться каждая версия Android для новых устройств?

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

Может ли устройство иметь другой пользовательский интерфейс и быть совместимым?

Программа совместимости Android определяет, может ли устройство запускать сторонние приложения. Компоненты пользовательского интерфейса, поставляемые с устройством (такие как домашний экран, номеронабиратель и цветовая схема), обычно не оказывают большого влияния на сторонние приложения. Таким образом, разработчики устройств могут свободно настраивать пользовательский интерфейс. Документ определения совместимости ограничивает степень, в которой OEM-производители могут изменять пользовательский интерфейс системы для областей, которые влияют на сторонние приложения.

Когда будут выпущены определения совместимости для новых версий Android?

Наша цель состоит в том, чтобы выпустить новую версию Документа определения совместимости Android (CDD), когда соответствующая версия платформы Android достаточно приблизилась, чтобы позволить это. Хотя мы не можем выпустить окончательный вариант CDD для версии программного обеспечения Android до того, как первое флагманское устройство поставляется с этим программным обеспечением, окончательные CDD всегда выпускаются после первого устройства. Однако везде, где это возможно, мы выпускаем черновые версии CDD.

Как проверяются утверждения совместимости производителей устройств?

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

Что произойдет, если позднее будет обнаружено, что устройство, которое заявляет о совместимости, имеет проблемы с совместимостью?

Как правило, отношения Google с лицензиатами Google Play позволяют нам попросить производителя устройства выпустить обновленные образы системы, которые устранят проблемы.

Вернуться к началу

Тест на совместимость

Какова цель CTS?

Compatibility Test Suite - это инструмент, используемый производителями устройств для обеспечения совместимости их устройств и представления результатов испытаний для проверки. CTS предназначен для частой работы OEM-производителей на протяжении всего процесса проектирования, чтобы на ранних этапах выявить проблемы совместимости.

Какие вещи тестирует CTS?

В настоящее время CTS проверяет, что все поддерживаемые API-интерфейсы со строгой типизацией Android присутствуют и работают правильно. Он также проверяет другие поведения системы, не связанные с API, такие как жизненный цикл приложения и производительность. Мы планируем добавить поддержку в будущих версиях CTS для тестирования программных API, таких как Intents.

Будут ли отчеты CTS обнародованы?

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

Как лицензируется CTS?

CTS лицензируется под той же лицензией Apache Software License 2.0, которую использует большая часть Android.

Принимает ли CTS вклад?

Да, пожалуйста! Android Open Source Project принимает вклады для улучшения CTS, как и для любого другого компонента. Фактически, улучшение охвата и качества тестовых случаев CTS является одним из лучших способов помочь Android.

Кто-нибудь может использовать CTS на существующих устройствах?

Документ определения совместимости требует, чтобы на совместимых устройствах была реализована утилита отладки adb . Это означает, что любое совместимое устройство (в том числе имеющееся в продаже) должно иметь возможность выполнять тесты CTS.

Проверены ли кодеки CTS?

Да. Все обязательные кодеки проверены CTS.

Вернуться к началу