您支持 Android 应用程序多久了?

How far back do you support Android Apps?

只是想知道编写新应用程序的标准做法。

您编写的代码是否一直支持 API 15 (Android 4) 并尝试支持基本上所有 Android 平台?还是主要是 "code for the most recent and if someone complains, add back support"?

我正在使用 java.time 库,我发现它仅在 Java API 26 (Android 8) 中可用。我应该直接使用它吗?或者包括代码来检查手机版本并为那些旧版本添加代码?

谢谢!

如果您要为 Android 8 和更高版本制作应用程序,目前您将只覆盖大约 30% 的 Android 设备。

您可以在开发者面板查看设备分布情况:Developer dashboard

首先您可以专注于为较新的设备开发应用程序,然后为较旧的设备编写回退代码。

这也取决于你的目标用户是谁。

只要方便就支持吧

如果我可以通过避免使用后来版本中添加的一些小便利来支持早期版本,我通常会毫不犹豫地支持旧版本。一种实用的方法是将您的最低 SDK 版本设置为比您认为可能想要支持的更低的版本,并在您遇到需要这样做的理由时逐渐提高它。如果这样做需要大量的额外工作,我需要一个令人信服的理由来支持旧版本。

了解您的目标受众。

开发人员仪表板很有用,但不是全部。我现在正在开发一个应用程序,我希望它能用在人们专门用于特定爱好的旧的、退役的手机上。这是支持旧 Android 版本的一个令人信服的理由示例。我还开发了一个需要支持 Android 2.1(当时是 6.0)的应用程序,因为使用它的客户对旧硬件进行了大量投资。

我觉得Android4已经支持很多了。我目前正在开发 Launcher 应用程序,在支持 API 版本 14 及更高版本的所有内容时遇到了 0 个问题。

当您确实需要特定功能/库的更高 API 版本时,我建议选择 5 或 6,它们也支持相当大比例的设备(请参阅 link来源)。

但我认为应该让尽可能多的开发人员支持旧设备。对于大多数用途,较旧的 Android 手机已经足够快了。如果更多的开发人员支持旧手机(和设备),它们就不会这么快就被扔进抽屉里(那只是一种浪费)。根据我的经验,没有什么比软件更能导致这种行为(Windows Phone 是不是一个很好的例子,说明缺少软件会对 - 在我看来 - 非常好的操作系统造成什么影响?)。

Android 4.0 是我的最低要求,降低需要更多时间。

为了更好地了解按 Api 版本划分的用户,您可以访问: https://developer.android.com/about/dashboards