是否有可能只显示某个Android版本的小部件?

是否有可能在“添加到主屏幕>小工具”对话框中显示小工具只为某个Android版本,而无需上传两个APK并分配到正确的SDK版本号?

Solutions Collecting From Web of "是否有可能只显示某个Android版本的小部件?"

我有办法做到这一点,没有任何代码,例如:

在你的res \ values目录下创build一个bools.xml文件:

<?xml version="1.0" encoding="utf-8"?> <resources> <bool name="honeycombOrAbove">false</bool> </resources>

创build一个values-v11目录(对于蜂窝或以上的值),将文件复制到它并设置值为true。

然后在小部件接收器的清单中使用:android:enabled =“@ bool / honeycombOrAbove”。 我也在小部件的configuration活动中使用它。

这意味着该小部件在安装时被禁用。

你可以使用componentEnableSetting来完成。 只要禁用你不想列出的小部件。 电话重启后,更改将生效。

 Context context = getApplicationContext(); String str1 = "org.classname.to.widget.provider"; ComponentName componentName = new ComponentName(context, str1); PackageManager packageManager = getPackageManager(); int versioncode = Integer.valueOf(android.os.Build.VERSION.SDK); //enable widget packageManager.setComponentEnabledSetting(componentName, 1, 1); //disable widget packageManager.setComponentEnabledSetting(componentName, 2, 1);