Android设备选择器在目标列中显示红色X

Android设备选择器在目标列中显示红色X,android,android-actionbar,actionbarsherlock,Android,Android Actionbar,Actionbarsherlock,我最近开发了一款Android应用程序,Minsdk版本为7,targetSdkVersion版本为10。我现在正在使应用程序与平板电脑兼容并添加动作栏。因此,我将targetSdkVersion更新为15,并在我的项目属性中,将我的项目构建Tarket移动到Android 4.0.3,API 15。我还仔细检查了我的Java编译器是否为1.6 在不对代码进行任何其他更改的情况下,我尝试运行我的应用程序,在Android设备选择器中,我的两个物理设备版本2.3.4和3.1在目标列中都有一个红色的

我最近开发了一款Android应用程序,Minsdk版本为7,targetSdkVersion版本为10。我现在正在使应用程序与平板电脑兼容并添加动作栏。因此,我将targetSdkVersion更新为15,并在我的项目属性中,将我的项目构建Tarket移动到Android 4.0.3,API 15。我还仔细检查了我的Java编译器是否为1.6

在不对代码进行任何其他更改的情况下,我尝试运行我的应用程序,在Android设备选择器中,我的两个物理设备版本2.3.4和3.1在目标列中都有一个红色的X,而不是绿色的复选标记

我还在使用ActionbarCompat示例应用程序和ActionbarSherlock的示例应用程序,当我运行其中一个应用程序时,我的两台设备都会显示一个绿色复选标记。这两个示例应用的项目构建目标都设置为4.0.3,并且sdkVersion设置与我在应用中的设置相同。据我所知,我的应用程序设置与其他应用程序相同。为什么我的应用程序在目标列中的设备版本旁边有一个红色的X


谢谢

这是因为您的设备运行的是Android版本2.3.4和3.1, 因此,您必须至少具有minSdkVersion=“10”。一旦你设置了这个版本
到10时,您将再次获得绿色复选标记。

AndroidManifest.xml:

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="15" />

如果清单中的“targetSdkVersion”高于设备,则固件旁边会显示“红十字(X)”

如果你的MinSDK版本高于你的设备,它甚至不会运行

更新:

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="15" />
我测试了示例项目,得到了与我从一开始就澄清的答案相同的结果。

在Eclipse中,更改minSdkVersion和targetSdkVersion后

如果“Android设备选择器”仍然在设备上显示红色X(应该是兼容的)。尝试:

  • 打开“调试配置”或“运行配置”对话框
  • 删除“Android应用程序”下的所有配置
  • 重试右键单击项目>调试方式>Android应用程序

所有兼容设备现在都应该转到绿色复选标记。

问题提到minSdkVersion已设置为7,否?@Joe是对的,我已将minSdkVersion设置为7。将其设置为3也没有帮助。我上面提到的示例代码是min3,target 14,我得到了该代码的绿色检查。我不知道示例代码和我的代码之间有什么不同。你的应用程序是否引用了任何库项目?如果有,我想知道您是否可以检查project.properties文件中是否有
manifestmerge.enabled=true
,并查看添加/删除它是否有影响。@Joe我刚才看到了这个评论。添加manifestMerge.enabled=true不会更改任何内容。我包括ActionBarSherlock库和Android的支持库。在我开始包含任何库之前,当我更改项目构建目标并更新清单时,红色的X出现了。你能给出你正在测试的actionbarcompat的链接吗?@Jorgeguilar进入Eclipse,单击文件->新建->其他并选择“安卓示例项目”。选择4.0.3或4.1并单击下一步。选择顶部附近的“ActionBarCompat”,然后单击finish。一个新项目将出现在Eclipse中,检查它的清单文件并使用任何设备进行测试,您应该得到一个绿色的复选标记而不是红色的x。这是不正确的,如果您加载ActionBarCompat示例,您将看到它使用minSdkVersion 3和targetSdkVersion 14。当我在运行应用程序的相同设备上运行该应用程序时,我会得到绿色复选标记。当我运行我的应用程序时,我得到了红色的x。如果我在project>properties>Android中将“project build target”更改为比我的设备更高的目标,则会显示红十字,但如果低于,则会显示绿色复选框。你做到了吗?或者只是更改了舱单?因为清单没有更新项目构建目标。我不明白为什么会出现-1。这是第一个有人给我的。-1因为你的答案不正确。我是基于我对ActionBarCompat示例中的代码所做的工作。该项目被设置为min 3和target 14,项目构建目标被设置为14,我得到了所有设备的绿色检查。如果你读过我的原始问题,你对我的第一条评论的第一条评论是没有必要的。我在那里说,是的,我已经更改了我的项目属性和清单文件-1所以其他用户没有读到你的答案并认为它是正确的。就是这样!!!非常感谢您发布此回复!各位,请投票表决这个答案@Hiep如果你知道原因,你介意解释一下为什么它会起作用吗?@JDenais我假设“调试配置”缓存了旧的minSdkVersion和targetSdkVersion,所以在更改它们之后,你应该重新创建“调试配置”(右键单击项目>调试As>Android应用程序)