我需要将Android项目的目标SDK版本设置为API 14.但是我没有相同的版本来编译项目。我知道该项目可以使用不同的版本编译,但我需要知道它是否会导致任何问题。
我收到错误" Android清单文件丢失" 即使它存在。当我清理然后构建项目时,它被编译但应用程序崩溃了。我在这做错了什么?
这些是我的设置。 Template literals
答案 0 :(得分:1)
使用更高版本进行编译时不应该引入任何问题,甚至鼓励这样做。您可以在此Medium article中找到有关该主题的更多信息。
我还想提请您注意以下blog,其中包含一些有关SDK定位的重要信息。
不幸的是我不使用Eclipse,所以我担心无法提供任何经过验证的洞察力。但是到目前为止我找到的建议包括:
清单问题可能是由于反复创建一个具有相同名称的项目。但是干净 - >构建项目帮助我摆脱它。
呀。 Android编译版可以高于目标版本。 Android编译版和目标版不必相同。
答案 1 :(得分:0)
compileSdkVersion
compileSdkVersion是编译应用程序的API的版本。这意味着您可以使用该API版本中包含的Android API功能(以及所有以前的版本)。如果您尝试使用API 16功能但将compileSdkVersion设置为15,则会出现编译错误。如果将compileSdkVersion设置为16,只要您的应用程序的执行路径不尝试调用API 16特定的API,您仍然可以在API 15设备上运行该应用程序。
targetSdkVersion
targetSdkVersion与您的应用程序编译方式或可以使用的API无关。 targetSdkVersion应该表明您已经测试了您的应用程序(可能是最多并包括)您指定的版本。这更像是一个认证或签名,你给Android操作系统作为一个提示,它应该如何处理你的应用程序的操作系统功能。
至于清单错误,您可以尝试(如果您使用的是android studio)点击文件>使高速缓存/重新启动无效或强制执行gradle sync
答案 2 :(得分:0)
感谢您的回答。
我认为清单问题是由于一遍又一遍地创建一个具有相同名称的项目。但是干净 - >构建项目帮助我摆脱它。
呀。 Android编译版可以高于目标版本。这两者不一定相同。