我们在API Level 8的支持下开始了一个应用程序,即Froyo verison。现在我们处于API级别18 Jelly Bean版本,我们如何停止在我的应用程序上使用已弃用的API。
一个例子
Dialog(API 1)vs DialogFragment(API 13)
以下是我的想法
1)使用Android Support Library好的方式去?
2)进行如下运行时API级别检查,这是一个健康的习惯吗?
if (Build.VERSION.SDK_INT==Build.VERSION_CODES) {//Some API Level
run a code
}else if(){
run a code
}
3)使用反射?
4)对每个API级别都有单独的代码库,没有意义。
5)Palystore是否允许我们根据API级别上传多个Apk。或者完全控制是使用-sdk清单值。
<uses-sdk android:minSdkVersion="integer"
android:targetSdkVersion="integer"
android:maxSdkVersion="integer" />
最好的方法是使用最新的API只有一个代码库,并使一个APK和内部具有向后的可比性支持。
非常感谢输入。
答案 0 :(得分:1)
一个示例对话框(API 1)与DialogFragment(API 13)
Dialog
is not deprecated。 使用 Dialog
的方法可能已被弃用,例如旧式托管对话框。
使用Android支持库好的方法?
一般来说,是的。
如下所示进行运行时API级别检查,这是一个健康的习惯吗?
是的,但通常您使用>=
或<=
而不是==
来推动一系列API级别的行为。
使用反射?
我不会。
对每个API级别都有单独的代码库,没有任何意义。 Palystore是否允许我们根据API级别上传多个Apk
在某些极端情况下,可能需要这样做。大多数应用都不需要这个。
最好的方法是使用最新的API只有一个代码库,并使一个APK和内部具有向后的可比性支持。
这不可能在摘要中回答。
答案 1 :(得分:0)
为什么不将现有应用程序上传为应用程序的“旧版本”,支持旧版本的应用程序,并继续为新设备开发现有应用程序?