Прямая или обратная совместимость в Android? - PullRequest
10 голосов
/ 29 января 2010

Я хотел бы знать, обеспечивает ли Android какую-либо совместимость, т.е. прямую или обратную. Это означает, что, как и в Blackberry, если разрабатывать Приложение с JDE 4.2, тогда это приложение будет работать на любом телефоне с ОС 4.2 или выше, что означает, что оно имеет прямую совместимость. Есть ли что-нибудь подобное в Android?

Предположим, я разрабатываю приложение с Android SDK 1.5, и тогда оно будет работать на любом телефоне с ОС 1.5 или выше.

Надеюсь получить ответ в ближайшее время.

Спасибо и С уважением Сунил

Ответы [ 4 ]

10 голосов
/ 29 января 2010

Форвард Compat несколько уверен на основных версиях. На Android вы нацелены на минимальные спецификации API. Пока вы не вызываете частные API, Google поддерживает совместимость на устройствах, которые присоединяются к их Open Mobile Alliance.

Это не означает, что кто-то не может получить исходный код Android и выпустить собственную ОС на базе Android, которая нарушает всю совместимость. Эти устройства не получили бы Google Market Place, потому что это могут использовать только лицензированные устройства, которые тестирует Google. Если это то, где вы выпускаете, у вас, вероятно, не будет никаких проблем.

6 голосов
/ 10 декабря 2012

Поскольку документация Android лицензируется по лицензии Apache, я могу привести большой раздел:

Приложения Android обычно совместимы с новыми версии платформы Android.

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

Прямая совместимость важна, потому что многие на платформе Android устройства получают обновления по беспроводной сети (OTA). Пользователь может установите приложение и успешно используйте его, а затем получите OTA-обновление до новой версии платформы Android. Однажды обновление установлено, ваше приложение будет работать в новом режиме версия среды, но та, которая имеет API и систему Возможности, от которых зависит ваше приложение.

...

Приложения Android не обязательно обратно совместимы с версии платформы Android старше, чем версия, против которой они были скомпилированы.

Каждая новая версия платформы Android может включать новый фреймворк API, такие как те, которые предоставляют приложениям доступ к новой платформе возможности или заменить существующие части API.

- От: http://developer.android.com/guide/topics/manifest/uses-sdk-element.html

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

3 голосов
/ 15 июня 2012

Это не то, что означает «прямая совместимость». Вы думаете о «обратной совместимости». «Обратная совместимость» означает, что в новых версиях платформы (т.е. Android) все еще будет работать старое программное обеспечение, разработанное для более старой версии платформы. «Прямая совместимость» - это точное обратное утверждение - старое программное обеспечение, разработанное для более старой версии платформы, будет все же сможет использовать новые функции новой платформы.

Примером обратной совместимости является то, что они переименовывают один из методов в ICS, но все еще реализуют устаревшую версию старого метода и направляют ее в новую реализацию.

Хотя обратная совместимость почти всегда гарантирована, прямая совместимость гарантируется только в определенных сценариях. Примером прямой совместимости может служить ситуация, когда они реализуют новую функцию в ОС (например, «ущипнуть, чтобы увеличить»), и приложения, написанные до появления этой функции, все еще могут пользоваться этой функцией.

1 голос
/ 15 июня 2012

Я думаю, что система Android обратно совместима, и это обеспечивает прямую совместимость приложения Android.

...