Android 小部件并非在所有设备上都可用

Android 小部件并非在所有设备上都可用,android,android-widget,Android,Android Widget,我已经开发了一个带有小部件的Android应用程序。应用程序和小部件在许多版本中都运行良好,但自从最新版本发布以来,我收到了很多用户的投诉,称小部件在某些设备上消失了。我看不出设备和问题之间有任何关联。更重要的是,我没有对这个小部件做任何更改。我仔细检查了以前的版本,没有任何变化。 唯一改变的是Android SDK和Eclipse版本。虽然我为相同的API级别构建,但我怀疑有些东西已经改变了 我有两个不同的Android设备(2.3.6和4.1),两个小部件都可以正常工作。 我不知道 有人吗?

我已经开发了一个带有小部件的Android应用程序。应用程序和小部件在许多版本中都运行良好,但自从最新版本发布以来,我收到了很多用户的投诉,称小部件在某些设备上消失了。我看不出设备和问题之间有任何关联。更重要的是,我没有对这个小部件做任何更改。我仔细检查了以前的版本,没有任何变化。 唯一改变的是Android SDK和Eclipse版本。虽然我为相同的API级别构建,但我怀疑有些东西已经改变了

我有两个不同的Android设备(2.3.6和4.1),两个小部件都可以正常工作。 我不知道


有人吗?

找出哪些设备。试着找到一个有小部件问题的用户,他愿意和你一起解决这个问题。您可以向他们发送带有额外调试输出、内存统计信息、版本等的自定义版本,或者尝试使用与他们一样的设备。

找到了根本原因:出于某种原因,在Play Store publish(播放存储发布)部分中,复制保护字段设置为OFF。由于在AndroidManifest文件中设置了一个选项
android:installLocation=“preferExternal
,应用程序现在突然在SD上安装了自己。在此之前,复制保护阻止了这一操作。
我的两台设备都没有安装SD卡,这就解释了为什么我没有看到问题。

问题可能是安装应用程序的位置,因为在SD卡上安装应用程序或将其移动到SD卡,会使小部件消失,但即使如此,我们如何调试它?您需要在清单文件中添加一个部分,然后是widgAndroid在显示可用小部件列表时会选择et。如果没有,我们应该从何处以及如何开始调试?如果没有,则可能是AppWidgetProvider类实现或AppWidgetProviderInfo对象存在问题,并且该问题仅发生在某些设备上。您是否使用了
auto
仅限内部
来修复它?