添加android:widgetCategory =“keyguard | home_screen”,同时还支持较老的sdk

我试图修改我的小部件,以便它支持被放置在4.2锁屏上。 不过我仍然想支持较老的SDK。

我补充说

android:widgetCategory="keyguard|home_screen" 

我的appwidget提供者在res / xml,但日食抱怨有没有资源标识符find属性widetCategory在包android中“

如果我将minSdkVerion提高到17,一切正常,但我仍然想支持较老的SDK。

我已经尝试使用资源限定符创build一个separte res / xml-v17 / mywidget.xml,只在那里添加标签,但是错误仍然出现。

谢谢你的帮助。

编辑:我想通了。 使用res / xml-v17 /文件夹是答案。 我只需要将我的项目的构build目标更改为17 / 4.2。

我认为将targetSdk设置为17就足够了。 在旧SDK上无意义的XML元素会被忽略。

无需将mywidget.xml放入res/xml-v17文件夹中

将你的mywidget.xml的副本放在res / xml-v17 /文件夹中。 这个目标是Android 4.2,appwidget-provider元素上的所有新属性都是可用的。在eclipse中右键点击你的项目,把build target改为:API level 17 / Android 4.2

我看到你的编辑。 但是我认为这个问题更清楚地说明了这个问题有一个答案。

更新:我可以确认TomášHubálek的答案。 xml-v17是不需要的。 更改构build目标就足够了。 在eclipse中右键点击你的项目,并将构build目标更改为:API level 17 / Android 4.2