繁体   English   中英

android SDK中的目标SDK选项是否必须与测试设备Android版本相同? (Android SDK基础)

[英]does the target SDK option in android SDK have to be the same as the test device Android version? (Android SDK basic)

我需要告诉别人如何通过电子邮件设置Android SDK。 我在最新设备上进行了所有测试,我的程序都正确编译为我的设置,但我不知道他们有什么设备和哪个确切的Android版本(但我相信他们可能至少有Android 4.0,但可能有更古老的东西,比如Android 2.3。 要运行最基本的Hello World程序(或我在我的最新设备上测试的任何其他程序),在New Android Application对话框中,我是否必须选择与他们一起使用的完全相同的Android版本它们,或者它可能比它们在设备中的含量更高?
在此输入图像描述

如果程序选择的内容高于其设备上的内容,程序是否仍然可以编译运行? 我必须指出,无论他们拥有什么设备或者他们将编译什么程序,他们只会使用旧API(API 1 - 3)中提供的类。 那么我在这里选择的内容是否有所不同,或者它必须与他们的设备上的内容有关还是更老?

我没有其他Android设备供我测试,所以非常感谢您的帮助。 谢谢。

android:minSdkVersion - 指定应用程序能够运行的最低API级别。

android:targetSdkVersion - 指定应用程序运行的API级别。

您的设备不必与targetSdkVersion匹配。 但是,通常您希望将targetSdkVersion设置为最新的Android版本。 要确保应用程序可以在较旧的设备上运行,请务必使用Android支持库 ,将较新的功能向旧版API级别移植。

您可以阅读有关uses-sdk的更多信息,以了解有关要定位的API级别的更多信息。

您应该为所有代码正常工作所需的API设置所需的最小SDK。 某些API方法在更高版本之前不可用,而某些API方法在当前版本中已被弃用(尽管已弃用的方法仍应按预期工作)。 我所知道的设备都不需要API 1-3。 大多数设备都有8或更高。 目标SDK是您编程时所针对的代码,因此如果新API已经可用并且您在代码中使用它们,那么您将不会收到编译时错误,指出方法/类不存在。 您还应该知道,如果您定位更高的API然后将在设备上运行,您可能会遇到不存在的方法/类的运行时错误。

要运行您的应用,您的设备必须等于或高于您的最低SDK

您的Target SDK是针对其编译应用程序的SDK。 请记住,使用更高的SDK可以让您在应用中使用更新的API功能并成功编译,然后在旧设备上遇到运行时错误。 这可以使用if else语句进行管理,以便在使用较新的类之前测试API

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM