Существует ли способ использовать функции в Android 2.1/2.2 при хранении minSDK версии к 3?

У меня есть проект, который просто использует Android 1.5 для программирования, но с быстрым увеличением других гарнитур и некоторых замечательных функций в Android 2.2, мы хотели бы поддерживать функции, не теряя поддержку 1,5 или разветвляя новую кодовую базу. Действительно ли возможно сделать с Android SDK?

У меня действительно есть некоторый смысл "ужасного" способа сделать это, как в хранении той же кодовой базы, но иметь систему сборки, которая создает различные версии для платформ, и сохраните различные файлы Java, вокруг которых включены наш из сборки, на основе которой выбрана версия. Я надеюсь, что кто-то еще решил проблему на основе многих версий приложений на рынке, которые работают на нескольких версиях Android.

7
задан prasanna 26 May 2010 в 15:28
поделиться

1 ответ

мы хотели бы поддерживать функции без потери поддержки 1.5 или создание новой кодовой базы. Это можно сделать с Android SDK?

Конечно. Эти методы существуют около десяти лет.

Вариант №1: Используйте отражение для доступа к новым классам (или новым методам существующих классов) во время выполнения. См. Здесь пример.

Вариант №2: Используйте условную загрузку класса, создав интерфейс плюс две реализации (одна для старого API, одна для нового API) и загружая правильную реализацию во время выполнения. Поскольку более новая реализация не будет загружена на старое устройство, тот факт, что новая реализация использует классы или методы, отсутствующие в старом устройстве, не представляет проблемы. См. Здесь пример.

6
ответ дан 7 December 2019 в 09:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: