我正在将Android应用程序交给非技术客户进行长期维护。任何人都可以提供关于应用程序可能因操作系统更新而中断的频率的洞察,以便他们必须引入外部开发人员?由于操作系统更新,Android应用程序多久会中断?
我猜这将取决于应用程序的类型,所以让我在下面提供更多的信息:
谢谢!
我正在将Android应用程序交给非技术客户进行长期维护。任何人都可以提供关于应用程序可能因操作系统更新而中断的频率的洞察,以便他们必须引入外部开发人员?由于操作系统更新,Android应用程序多久会中断?
我猜这将取决于应用程序的类型,所以让我在下面提供更多的信息:
谢谢!
如果您完全依赖于平台/ SDK功能,除非Android/Google实际启动并删除较新SDK版本中的弃用功能,否则您的应用不会中断 - 它实际上并未在过去一次完成(当然,除了一次,当他们将旧的Apache HTTP库移动到外部依赖项时,但到目前为止这只发生过一次)。因此,您的应用将继续工作,但会稍微降低即将推出的SDK版本的集成度和UI设计。例如,看看现代棒棒糖或棉花糖设备上的“外星人”姜饼或更旧的应用程序是如何看的 - 但也看到他们如何继续工作。
如果您依赖谷歌地图,您依赖于Google Play服务,这是一个完全不同的领域。由于Play服务是由Google独立更新的,因此它们的API会不同地发展,并且更经常引入重大更改。然而,这些突破性变化之前已经很久了,例如,在宣布弃用后的两年多时间内放弃了旧版地图v1 API。
HockeyApp是您依赖外部服务器功能的另一个候选人。如果微软决定对此服务做任何改变(改变API,完全放弃它),你当然需要触动你的实现。但是,再次,这应该在实际发生之前进行很长时间的沟通。
谢谢你的详细和有见地的答案,托马斯。对于谷歌播放服务,如果我们在我们的Gradle构建中指定我们的GPS版本,我们是否会遇到突破API的变化? (例如编译'com.google.android.gms:play-services-maps:8.3.0') –
作为一个方面说明:实现的变化 - 请参阅AsyncTask http://stackoverflow.com/questions/4068984/running-multiple -asynctasks在同一时间不可能或供应商的实现 - 请参阅三星Appcompat是什么东西http://stackoverflow.com/questions/24809580/noclassdeffounderror-android-support-v7-internal-view-menu-menubuilder是东西你无法控制。 –
问题是,您指定的GPS版本仅指定GPS的“客户端”组件,并且通过二进制协议与本地“服务器”版本进行通信,该版本已部署并使用用户设备上的GPS apk进行自动更新。这个协议当然可以向后兼容,但在某些时候,你的本地版本会过时,你需要重新编译(并可能适应)你的应用程序到更新的版本。 –
对不起,这个问题不能回答。 – Meier
@Meier,如果是这样的话,你能解释一下为什么? –