Google принудительно обновляет руководство по адаптации TargetSdkVersion, обратитесь к Huawei.

Руководство по адаптации TargetSdkVersion принудительного обновления Google

Версия Android P, выпущенная Google, выдвигает требования к параметру TargetSdkVersion.Терминальная открытая лаборатория Huawei быстро протестировала ТОП3000 приложений, и результаты тестирования оказались не оптимистичными: более 300 приложений имели проблемы совместимости, а уровень несовместимости превысил одну десятую.

Итак, как разработчикам следует решать проблемы совместимости, возникающие из-за TargetSdkVersion в процессе адаптации версии P? Далее эксперты Huawei помогут вам интерпретировать руководство по адаптации Google TargetSdkVersion<17.

1. История функции Google TargetSdkVersion

Google требует, чтобы значение TargetSdkVersion в настройках приложения в версии P было >=17, в противном случае появится диалоговое окно с предупреждением для пользователя, а у Google есть четкое требование CDD, и это приглашение нельзя удалить.

t1.jpg

2. Руководство по адаптации

2.1 Измените значение TargetSdkVersion приложения.

t2.png

Разработчикам рекомендуется установить для TargetSdkVersion значение 17+. Если параметр TargetSdkVersion слишком высок и рабочая нагрузка по адаптации слишком велика, они также могут установить для адаптации TargetSdkVersion значение 17. Этот параметр минимизирует рабочую нагрузку по адаптации.

2.2 Проблемы совместимости

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

2.2.1 Версия P

  1. Перенос приложения на Android P. Ссылка:  https://developer.android.com/preview/migration .

  2. Функции Android P и ссылки на API: https://developer.android.com/preview/features .

  3. Ссылка на изменение поведения Android P: https://developer.android.com/preview/behavior-changes

Фокус:

  1. Чтобы узнать об ограничениях интерфейса, не связанных с SDK, ссылка: https://developer.android.com/preview/restrictions-non-sdk-interfaces.

  2. Адаптация Лю Хайпина, ссылка: https://developer.android.com/preview/features#cutout

2.2.2 Версия О

  1. Перенесите приложения на Android 8.0, ссылка: https://developer.android.com/about/versions/oreo/android-8.0-migration .

  2. Функции и API Android 8.0, ссылка: https://developer.android.com/about/versions/oreo/android-8.0 .

Фокус:

  1. Изменения в поведении Android 8.0, ссылка: https://developer.android.com/about/versions/oreo/android-8.0-changes

  2. Максимальное соотношение сторон экрана: если в приложении установлено TargetSdkVersion>=26, то экран с любым соотношением сторон по умолчанию будет отображаться в полноэкранном режиме, и разработчикам необходимо обратить внимание на адаптацию отображения экранов с разными соотношениями сторон. Приложения, ориентированные на Android 7.1 (уровень API 25) или ниже, имеют максимальное соотношение сторон экрана по умолчанию 1,86. Приложения, предназначенные для Android 8.0 или более поздней версии, не имеют максимального соотношения сторон по умолчанию. Если вашему приложению необходимо установить максимальное соотношение сторон, используйте атрибут maxAspectRatio в файле манифеста, который определяет ваш компонент действия.

  3. Ограничения на фоновое выполнение: управление трансляцией и фоновыми службами, ссылка: https://developer.android.com/about/versions/oreo/background

  4. Разное: ключевые изменения, влияющие на приложения, когда для параметра targetSdkVersion установлено значение «0».

Разнообразие Краткое содержание другие ссылки
Конфиденциальность Android 8.0 не поддерживает использование системных свойств net.dns1, net.dns2, net.dns3 и net.dns4.

Изменение поведения:

Конфиденциальность

Обеспечивает выполнение записываемых и исполняемых сегментов кода. Для нативных библиотек в Android 8.0 реализованы следующие правила: данные не должны быть исполняемыми, а код не должен быть доступен для записи.

Изменение поведения:

Родная библиотека

Проверка заголовка и раздела ELF Динамический компоновщик проверяет наличие дополнительных значений в заголовках ELF и заголовках разделов и терпит неудачу, если значение недопустимо.

Изменение поведения:

Родная библиотека

поставить в известность Приложения SDK для Android 8.0 должны реализовывать один или несколько каналов уведомлений, чтобы отправлять уведомления пользователю.

Обзор API:

поставить в известность

Метод Список.сорт()  Реализации этого метода больше не должны вызывать Collections.sort() , иначе приложение выдаст исключение из-за переполнения стека.

Изменение поведения:

обработка коллекции

Коллекции.Метод sort()  В реализациях списков Collections.sort() теперь генерирует исключение ConcurrentModificationException.

Изменение поведения:

обработка коллекции

2.2.3 Версия N

Изменения в поведении Android 7.0, ссылка: https://developer.android.com/about/versions/nougat/android-7.0-changes

Ключевые изменения в функциях: приложения NDK, связывающиеся с библиотеками платформы. Начиная с Android 7.0, система не позволяет приложениям динамически связывать закрытые библиотеки NDK, что может привести к сбою вашего приложения. В следующей таблице описаны частная собственная библиотека и ее целевой уровень API. (android:targetSdkVersion), ожидаемое поведение приложения:

библиотека целевой уровень API N Поведение предварительного просмотра для разработчиков Окончательное поведение версии Android N Будущее поведение платформы Android
Открыть НДК произвольно Как и ожидалось Как и ожидалось Как и ожидалось

частный

(временно доступная частная библиотека)

23 или ниже Как и ожидалось, вы получаете предупреждение logcat и сообщение на целевом устройстве. Как и ожидалось, вы получаете предупреждение logcat. ошибка выполнения

частный

(временно доступная частная библиотека)

24 или выше ошибка выполнения ошибка выполнения ошибка выполнения
частный (другой) произвольно ошибка выполнения ошибка выполнения ошибка выполнения

2.2.4 М версия

  1. Изменения Android 6.0, ссылка: https://developer.android.com/about/versions/marshmallow/android-6.0-changes

  2. API Android 6.0, ссылка: https://developer.android.com/about/versions/marshmallow/android-6.0

  3. Руководство по тестированию Android 6.0, ссылка: https://developer.android.com/about/versions/marshmallow/android-6.0-testing

Версия 2.2,5 л

  1. Android 5.1API, ссылка: https://developer.android.com/about/versions/android-5.1

  2. API Android 5.0, ссылка: https://developer.android.com/about/versions/android-5.0

  3. Изменения в поведении Android 5.0, ссылка: https://developer.android.com/about/versions/android-5.0-changes

2.2.6 К версия

  1. API Android 4.4, ссылка: https://developer.android.com/about/versions/android-4.4

2.2.7 Версия J

  1. API Android 4.3, ссылка: https://developer.android.com/about/versions/android-4.3 .

  2. API Android 4.2 (уровень API: 17), ссылка: https://developer.android.com/about/versions/android-4.2

  3. API Android 4.1 (уровень API: 16), ссылка: https://developer.android.com/about/versions/android-4.1

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

3. Метод тестовой проверки

3.1 Версия щетки P

Купите Google Pixel, Pixel XL, Pixel2, Pixel 2 XL, почистите версию P для тестирования.

3.1.1 скачать версию

Ссылка: https://developer.android.google.cn/preview/download .

оборудование ссылка для скачивания Контрольная сумма SHA-256
Пиксель парусник-ppp2.180412.013-фабрика-18f60ec5.zip 18f60ec5d77dc44a2c80ca0819fe3ce3aaeba04cd35a58598b8352eb200b010a
Пиксель XL марлин-ppp2.180412.013-фабрика-cf8ae2b1.zip cf8ae2b1bfe6b9ba8ada311436c29e1cee731c16f1bf790cc36923faf96ee423
Пиксель 2 судак-ppp2.180412.013-фабрика-6406b348.zip  6406b348c6dc2349b1dcf33e1031043d3d0a2c3a065f64e0385d8ee6dacfbcbf
Пиксель 2 XL таймень-ppp2.180412.013-фабрика-546fdc1f.zip 546fdc1fa56d4d47f1c729688c8087d66d59ce831f01b08e28b67bb0320463cd

  a8.png

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

3.1.2 Мигание

Перед прошивкой необходимо выйти из аккаунта Google, в который вы вошли ранее.

1. Загрузите сжатый пакет соответствующего устройства и распакуйте его.

2. После подключения телефона к USB выполните команду adb restart bootloader.

3. Когда на мобильном телефоне появится небольшой рисунок робота и слово «разблокировать», выполните bat-скрипт в сжатом пакете.

4. Если это «блокировка»:
        (1) Нажмите «Настройки-Номер версии» 7 раз подряд, чтобы открыть параметры разработчика; (
        2) Откройте OEM-разблокировку в параметрах разработчика;
        (3) Подключите телефон к компьютеру и выполните adb Команда перезагрузки загрузчика для интерфейса маленького робота;
        (4) Выполните разблокировку fastboot oem, телефон будет разблокирован, а затем используйте описанный выше метод перепрошивки.

3.2 Удаленная отладка реальной машины

Если новому пользователю необходимо подать заявку на участие в функции облачного тестирования в открытой лаборатории терминала Huawei, ему необходимо присоединиться к Android Green Alliance и стать его участником. Подайте заявку, выполнив следующие действия:

1. Авторизуйтесь на платформе DevEco .

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

3. Отправьте свой новый номер учетной записи, компанию, личное имя и номер телефона, а также название ответственного приложения на адрес [email protected], чтобы подать заявку на вступление в Android Green Alliance. После прохождения проверки вы будете дал разрешение на его использование.

4. Войдите в учетную запись и выберите реальное устройство для удаленной отладки.

a9.png

5. Выберите телефон: Pixel.

a10.png

6. Нажмите «Испытать сейчас», чтобы загрузить APK для отладки.

a11.png

3.3. Проверка с помощью Google Simulator

Установите и настройте Android P SDK и эмулятор, см. https://developer.android.google.cn/preview/setup-sdk.

Чтобы получить более интересный контент версии Android P, обратите внимание на Android Green Alliance.

Guess you like

Origin blog.csdn.net/qq_19822039/article/details/83537739