ПАКЕТ СУМІСНОСТІ – програмування Android

Один з найважливіших аспектів, повязаних з фрагментами, полягає в тому, що, хоча вони і зявилися у версії Android 30, а в більш ранніх версіях API відсутні, Google надає пакет сумісності (Android Compatibility Package, АСР), щоб функції, повязані з фрагментами, можна було використовувати і на тих пристроях, де до цих пір працюють більш старі версії Android

Пакет сумісності – це не, панацея Він не забезпечує сумісності з більш новими версіями («знизу вгору») Додаток, що використовує АСР, потребує АСР, навіть якщо працює в системі Android 30 Розробляючи стратегію впровадження АСР, Google зіткнувся із справжньою головоломкою Навіть якби вдалося реалізувати пакет сумісності так, щоб додаток можна було прозоро, без змін портировать з Android 30 на Android 20 + АСР, то проблема все одно б виникала АСР доводилося б включати в програму як її частину Якби в АСР визначалися класи, однойменні тим, що присутні в Android 30, то додаток, – що використовує такий пакет, визначало б класи, які вступали б у конфлікт зі своїми системними визначеннями Щоб уникнути цього треба було б виробляти досить хитрі маніпуляції з завантажувачем класів

Тому пакет сумісності працює на спеціальному базовому пакеті, android support v4, в якому визначаються характеристики, повязані з сумісністю Щоб програма, розроблена під Android 30, могла використовувати пакет сумісності, в її код буде потрібно внести зміни Як мінімум потрібно буде внести наступні зміни

Скопіюйте бібліотеку АСР в ваш проект У верхньому рівні цього проекту створіть каталог lib і скопіюйте архів android-support-v4 jar з папки з Android SDKextras/android/compatibility/v4 / в цей каталог lib

Додайте АСР в дорогу збірки проекту Якщо ви працюєте з Eclipse, виберіть цю бібліотеку в диспетчері пакетів (можливо, щоб побачити її, знадобиться оновити проект: для цього натисніть F5 або клацніть лівою кнопкою миші і виберіть Build Path ► Add to Build Path (Шлях збірки ► Додати в дорогу збірки))

Змініть цільову збірку проекту з Android 30 на Android 201 (Properties ► Android (Властивості ► Android)) Через зміни цільової версії збірки виникне безліч помилок

Деякі імпорти, що стосуються androidapp, доведеться оновити, щоб вони посилалися на androidsupportv4app За умови, що у вашій програмі не було помилок до зміни її цільової збірки, ви зустрінете лише пошкоджені імпорти і обновіть їх базовий пакет

Всі активності програми, що використовує фрагменти, повинні бути оновлені так, щоб замість підкласу Activity застосовувався FragmentActivity

Всі дзвінки до getFragmentManager потрібно змінити на виклики до getSupportFragmentMa-nager

Виправте всі залишилися помилки і протестуйте програму

Джерело: Android Програмування на Java для нового покоління мобільних пристроїв

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*