Android中的功能向后兼容性

时间:2017-05-14 12:43:07

标签: android android-api-levels

我在运行Android 6.0的设备上运行开发的应用程序时遇到一些错误,该设备在Android 2.3.6的设备上运行完美。我正在为两个设备使用相同的构建应用程序(针对Android API 10编译)。

错误是关于应用程序在新的Activity启动时被关闭以及选择联系人的时候,我知道如何解决该设备的问题,但问题是从我读过的内容我认为android没有在功能上向后兼容的问题(也许可能存在一些图形问题,但没有什么会使应用程序崩溃,因为它发生在我身上)。

所以我想知道这是否只是发生在我身上的一些特殊事件,最有可能的是,一旦我在一些更多的Android版本中检查这些错误并修复了应用程序的运行代码对他们来说,像这些错误之类的东西不会再发生,或者像这样的事件是比较常见的。如果是这样的话,那么检查并且可能会针对很多版本进行相应的开发听起来非常痛苦,所以我想知道是否有一些快捷方式,即使它没有提供100%安全性的正确应用程序在功能上发展,它提供了很高的安全性。

1 个答案:

答案 0 :(得分:1)

我认为一般来说,应用程序是向前兼容的,但前提是您确保不使用私有或无证件 api。

例如,当我第一次开始使用Android时,网上有很多关于如何发送和接收文本消息的信息,这些信息在谷歌文档中完全没有提到。使用该信息(未记录的api)会导致我的应用程序在KitKat出来并为特定目的引入并正式记录api时中断,因为同时他们删除了未记录的api中可用的功能。请参阅此处details。以上例子。

以下是有关兼容性的一些信息的链接: https://developer.android.com/guide/topics/manifest/uses-sdk-element.html

相关部分的剪辑

  

应用程序向前兼容Android应用程序一般   向前兼容Android平台的新版本。

     

因为几乎所有对框架API的更改都是附加的,所以   使用任何给定版本的API开发的Android应用程序(如   由其API级别指定)与更高版本向前兼容   Android平台和更高的API级别。应用程序应该   能够在Android平台的所有更高版本上运行,除了   在应用程序使用API​​的一部分的独立情况下   后来因某种原因被删除了。

     

前向兼容性非常重要,因为许多Android驱动   设备接收无线(OTA)系统更新。用户可以   安装您的应用程序并成功使用它,然后再收到   对新版Android平台的OTA更新。一旦   安装更新后,您的应用程序将在新的运行时运行   环境的版本,但具有API和系统的版本   您的应用程序所依赖的功能。

     

在某些情况下,API下方的更改,例如底层证券中的更改   系统本身,可能会影响您的应用程序在新的运行时   环境。出于这个原因,它对你来说非常重要   应用程序开发人员,了解应用程序的外观和方式   表现在每个系统环境中。帮助您测试您的应用程序   在各种版本的Android平台上,Android SDK包括   您可以下载多个平台。每个平台包括一个   您可以在AVD中运行的兼容系统映像,以测试您的   应用