[英]Regarding Minimum Required SDK , Target SDK , Compile with options in Android
[英]What value to set for: “Minimum Required SDK” , “Target SDK” & “Compile with”
我知道有很多问题,我也读过这个页面 。 但是,我仍然对确切的选择感到困惑。
如果我有一部运行Android 2.3.6的手机
我知道Minimum Required SDK
应该是我的应用支持的Android的最低版本。 例如,我会选择Android 2.2
或低于该值,比如Android 1.5
令人困惑的部分Target SDK
和Compile with
我在下面安装了以下内容:( SDK管理器中没有可用的Android 2.3.6
)
Android 4.2.2(API 17)
Android 3.0(API 11)
Android 2.3.3(API 10)
Android 2.2(API 8)
Target SDK
是否应设置为Android 4.2.2
的最大值,而不管我的手机使用的是什么; 哪个是Android 2.3.6
?
选择Android 4.2.2
会覆盖它下面的所有手机吗? 是对的吗?
要么
它应该设置为我的手机的确切/最接近的值。 这里有可用的Android 2.3.3
吗? 但不要超过我的手机Android 2.3.6
是Compile with
必须设置为最大的Android 4.2.2
或什么?
目标SDK是否应设置为Android 4.2.2的最大值,而不管我的手机使用的是什么; 哪个是Android 2.3.6?
这取决于你,但它总是建议使用最新的sdk作为目标。
它只是说应用程序将在min和target sdk之间工作,但仅针对目标sdk进行测试,因此如果有任何兼容的设置,系统必须处理它。
选择Android 4.2.2会覆盖它下面的所有手机吗? 是对的吗?
您的应用始终涵盖从Min-SDK到Max-SDK。 如果Min-SDK为1且未设置Max-SDk,则您的应用程序支持所有API。
它应该设置为我的手机的确切/最接近的值。 这里有可用的Android 2.3.3吗? 但不要超过我的手机Android 2.3.6
必须是最新的SDK
是编译必须设置为最大的Android 4.2.2或什么?
它只是您选择使用哪个SDK来编译您的应用程序。 但最好使用Target-SDK,而后者又是最新的。
我总是将我的Compile with
设置为与Target SDK
相同。
目标应该是您测试过的并构建您的应用程序以进行处理。 随着Android的发展,API行为可能会发生变化,例如默认的AsyncTask的串行/并行/串行性质(请参阅:同时运行多个AsyncTasks - 不可能?和http://commonsware.com/blog/2012/04/20 /asynctask-threading-regression-confirmed.html )取决于您的应用的Target API和设备API。 有趣的时间让我们发现它。
此外,各种API也会被折旧,因此使用最新的API会强制您仅使用当前维护的API。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.