我应该根据最新的SDK编译我的Android应用程序吗?

我应该根据最新的SDK编译我的Android应用程序吗?,android,Android,我的应用程序要求设备至少运行安卓2.0操作系统。对我来说,使用2.0 SDK编译我的项目更有意义吗?还是始终使用最新的SDK编译我的项目更有意义,即使它远远超过了2.0 例如,针对2.1编译的问题是,我不知道安卓2.0设备是否会运行使用2.1编译的应用程序…?您可以使用Android:targetSdkVersion,同时仍然允许您的应用程序在早期版本上运行(因为应用程序是基于Android:minSdkVersion过滤掉的). 如果您使用不受支持的API,您的应用程序将强制关闭。因此,您必须

我的应用程序要求设备至少运行安卓2.0操作系统。对我来说,使用2.0 SDK编译我的项目更有意义吗?还是始终使用最新的SDK编译我的项目更有意义,即使它远远超过了2.0

例如,针对2.1编译的问题是,我不知道安卓2.0设备是否会运行使用2.1编译的应用程序…?

您可以使用
Android:targetSdkVersion
,同时仍然允许您的应用程序在早期版本上运行(因为应用程序是基于
Android:minSdkVersion
过滤掉的). 如果您使用不受支持的API,您的应用程序将强制关闭。因此,您必须注意文档中关于所有函数的说明,并在模拟器集上测试您的应用程序,以使用最低SDK版本


然而,安卓开发者的博客讨论了如何编写支持早期SDK版本的应用程序——当然,这要付出一些额外工作的代价。很明显,这是否值得取决于你想联系谁

我认为它可以运行的设备是基于您在清单中声明的,在SDK级别,不是吗?我认为这就是混淆的开始-我的minSDKVersion设置为5(Android 2.0),但我使用SDK版本7(2.1)进行编译,这导致编译时警告指出了差异。我正在想办法采取什么行动,如果有的话。我将把我的targetSdkVersion设置为与我正在编译的SDK相同。我会将minSdk设置为5。至于编译器警告,我将忽略它。谢谢。只需使用旧的仿真器添加一些测试(最好是自动单元测试),就可以了!