OsArts / stack

Using or seeking for stack techologies.
0 stars 1 forks source link

Google Play #80

Open vovs03 opened 5 years ago

vovs03 commented 5 years ago

Google Play

Файлы расширений *.apk

Обзор

Каждый раз, когда вы загружаете APK с помощью консоли Google Play, у вас есть возможность добавить один или два файла расширения в APK. Каждый файл может иметь размер до 2 ГБ и может быть любого формата, который вы выберете, но мы рекомендуем использовать сжатый файл для экономии пропускной способности во время загрузки. Концептуально каждый файл расширения играет свою роль:

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

Однако даже если для обновления вашего приложения требуется только новый файл расширения патча, вы все равно должны загрузить новый APK с обновленным versionCode в манифесте. (Консоль Play не позволяет загружать файл расширения в существующий APK.)

:star: Примечание . Файл расширения патча семантически совпадает с основным файлом расширения - вы можете использовать каждый файл любым способом.

Формат имени файла

Место хранения

Процесс загрузки

Контрольный список развития

Правила и ограничения

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

  1. Каждый файл расширения может быть не более 2 ГБ.
  2. Чтобы загрузить файлы расширения из Google Play, пользователь должен получить ваше приложение из Google Play . Google Play не будет предоставлять URL-адреса для ваших файлов расширения, если приложение было установлено другими способами.
  3. При выполнении загрузки из вашего приложения URL-адрес, который Google Play предоставляет для каждого файла, является уникальным для каждой загрузки, и срок действия каждого из них истекает вскоре после его передачи вашему приложению.
  4. Если вы обновите свое приложение новым APK или загрузите несколько APK для одного и того же приложения, вы можете выбрать файлы расширения, которые вы загрузили для предыдущего APK. Имя файла расширения не изменяется - оно сохраняет версию, полученную APK, с которым файл был изначально связан.
  5. Если вы используете файлы расширения в сочетании с несколькими APK для предоставления разных файлов расширения для разных устройств, вы все равно должны загрузить отдельные APK для каждого устройства, чтобы предоставить уникальное versionCode значение и объявить разные фильтры для каждого APK.
  6. Вы не можете выпустить обновление для своего приложения, изменив только файлы расширения - вы должны загрузить новый APK, чтобы обновить свое приложение. Если ваши изменения касаются только ресурсов в ваших файлах расширения, вы можете обновить свой APK, просто изменив versionCode(и, возможно, также versionName).
  7. Не сохраняйте другие данные в свой obb/ каталог. Если вам необходимо распаковать некоторые данные, сохраните их в месте, указанном getExternalFilesDir().
  8. :warning: Не удаляйте и не переименовывайте .obb файл расширения (если вы не выполняете обновление). Это приведет к тому, что Google Play (или само ваше приложение) будет повторно загружать файл расширения.
  9. При обновлении файла расширения вручную, вы должны удалить предыдущий файл расширения.

Загрузка файлов расширения

В большинстве случаев Google Play загружает и сохраняет файлы расширения на устройстве одновременно с установкой или обновлением APK. Таким образом, файлы расширения доступны, когда ваше приложение запускается в первый раз. Однако в некоторых случаях ваше приложение должно загружать файлы расширения самостоятельно, запрашивая их по URL-адресу, предоставленному вами в ответе службы лицензирования приложений Google Play .

Основная логика, необходимая для загрузки файлов расширения, заключается в следующем:

  1. Когда ваше приложение запускается, ищите файлы расширения в общем хранилище (в Android/obb//каталоге). a. Если файлы расширения есть, все готово, и ваше приложение может продолжаться. b. Если файлы расширения находятся не там: i. Выполните запрос, используя Лицензирование приложений Google Play, чтобы получить имена файлов расширения, размеры и URL-адреса вашего приложения. ii. Используйте URL-адреса, предоставленные Google Play, чтобы загрузить файлы расширения и сохранить файлы расширения. Вы должны сохранить файлы в общем хранилище ( Android/obb/<package-name>/) и использовать точное имя файла, указанное в ответе Google Play.

    :star: Примечание . URL-адрес, который Google Play предоставляет для ваших файлов расширения, уникален для каждой загрузки, и срок действия каждого из них истекает вскоре после его передачи вашему приложению.

Если ваше приложение бесплатное (не платное), то вы, вероятно, не использовали лицензирование приложений.оказание услуг. Он предназначен в первую очередь для обеспечения соблюдения лицензионных политик для вашего приложения и обеспечения того, чтобы пользователь имел право использовать ваше приложение (он или она по праву заплатил за него в Google Play). Чтобы упростить функциональность файла расширения, служба лицензирования была расширена, чтобы предоставить ответ на ваше приложение, включающий URL-адрес файлов расширения вашего приложения, которые размещены в Google Play. Таким образом, даже если ваше приложение является бесплатным для пользователей, вам необходимо включить библиотеку проверки лицензии (LVL), чтобы использовать файлы расширения APK. Конечно, если ваше приложение бесплатное, вам не нужно принудительно проверять лицензию - вам просто нужна библиотека для выполнения запроса, который возвращает URL ваших файлов расширения.

:star: Примечание. Независимо от того, является ли ваше приложение бесплатным или нет, Google Play возвращает URL-адреса файла расширения только в том случае, если пользователь приобрел ваше приложение в Google Play.

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

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

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

vovs03 commented 5 years ago

Отформатировать разделы:

vovs03 commented 5 years ago

О библиотеке загрузчиков

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

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

В следующих разделах объясняется, как настроить приложение с помощью библиотеки загрузчиков.

vovs03 commented 5 years ago

Подготовка к использованию библиотеки загрузчиков

Чтобы использовать библиотеку загрузчика, вам нужно загрузить два пакета из SDK Manager и добавить соответствующие библиотеки в ваше приложение.

Сначала откройте Android SDK Manager ( Инструменты> SDK Manager ) и в разделе « Внешний вид и поведение»> «Системные настройки»> Android SDK выберите вкладку « Инструменты SDK », чтобы выбрать и загрузить:

Библиотека лицензирования Google Play Пакет расширения библиотеки Google Play APK Создайте новый библиотечный модуль для библиотеки проверки лицензии и библиотеки загрузчика. Для каждой библиотеки:

Выберите « Файл»> «Новый»> «Новый модуль» . В окне « Создать новый модуль» выберите « Библиотека Android» и нажмите « Далее» . Укажите имя приложения / библиотеки, например «Библиотека лицензий Google Play» и «Библиотека загрузчика Google Play», выберите « Минимальный уровень SDK» , затем нажмите « Готово» . Выберите « Файл»> «Структура проекта» . Перейдите на вкладку « Свойства » и в « Библиотеке» введите библиотеку из /extras/google/каталога ( play_licensing/для библиотеки проверки лицензии или play_apk_expansion/downloader_library/для библиотеки загрузчика). Нажмите OK, чтобы создать новый модуль. Примечание. Библиотека загрузчика зависит от библиотеки проверки лицензии. Обязательно добавьте библиотеку проверки лицензии в свойствах проекта библиотеки загрузчика.

Или из командной строки обновите ваш проект, включив в него библиотеки:

Поменяйте каталоги на /tools/каталог. Выполните android update projectс --libraryвозможностью добавить в проект LVL и библиотеку загрузчика. Например: Проект обновления Android --path ~ / Android / MyApp \ --library ~ / android_sdk / extras / google / market_licensing \ --library ~ / android_sdk / extras / google / market_apk_expansion / downloader_library Добавив в приложение библиотеку проверки лицензии и библиотеку загрузчика, вы сможете быстро интегрировать возможность загрузки файлов расширения из Google Play. Формат, который вы выбираете для файлов расширения и как вы читаете их из общего хранилища, является отдельной реализацией, которую вы должны рассмотреть в зависимости от потребностей вашего приложения.

:star: Совет: В пакет расширения Apk входит пример приложения, в котором показано, как использовать библиотеку загрузчика в приложении. В примере используется третья библиотека, доступная в пакете Apk Expansion, которая называется APK Expansion Zip Library. Если вы планируете использовать ZIP-файлы для своих файлов расширения, мы предлагаем вам также добавить в ваше приложение библиотеку ZIP расширения APK. Для получения дополнительной информации см. Раздел об использовании библиотеки расширений APK.

vovs03 commented 5 years ago

^^ форматировать...