(在此处编辑-下面是原始帖子)我已将最初的问题缩小为:home键对于常规Activity和appwidget配置Activity的行为根本不同。我用以下最少的Activity进行了测试:publicclassTestActivityextendsActivity{Loggerlogger=Logger.getLogger("logger");@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);}@OverrideprotectedvoidonUserLeaveH
这个问题几乎是Android-MultipleappWidgetsplayingdifferentsounds的重复,但我的代码不起作用。我正在添加一个带有小部件ID的额外Intent,并使用日志语句来证明这一点,但是每当我在有多个实例的情况下单击我的一个小部件时,我只会得到最后一个appWidgetId。看起来第一个小部件的Intent在添加第二个小部件后发生了变化。如果其他帖子中的代码应该有效,那么我一定是忽略了一些东西,因为我相信我的设置方式几乎相同。publicclassPhcaAppWidgetProviderextendsAppWidgetProvider{privates
我有一个带有一些AppWidget的应用程序。我在数据库中存储了关于每个小部件的一些信息,包括它的appWidgetId-我需要这些信息来正确更新每个小部件。问题是在设备重新启动后,我无法再处理这些appWidgetId,因为它们似乎改变了它们的值。我怎样才能克服这个问题?提前致谢。 最佳答案 看起来只有在某些设备上,appwidgetID在重新启动时才会更改(由于错误)。参见thisthread.我查看了Android源代码。appwidgetID确实保存在/data/system/appwidgets.xml的文件中。也许您的设
从小部件启动Activity时,一些应用程序小部件正在使用makeScaleUpAnimation(在JellyBean4.1中引入)。当您无法从您的小部件提供商那里访问View时,这怎么可能?有什么方法可以获取整个appwidgetsView之类的吗?我找不到解决方案..ActivityOptionsopts=ActivityOptions.makeScaleUpAnimation(view,0,0,view.getWidth(),view.getHeight());//Requesttheactivitybestarted,usingthecustomanimationoption
当您通常想在Android中添加AppWidget时,会出现一个列表,您需要在其中选择一个小部件并将其绑定(bind)到主屏幕。我正在尝试构建一个应用程序,它有自己的appWidgetHost以及我为它构建的特定AppWidgets。我有两个问题:我希望能够自动将小部件绑定(bind)到我的AppWidgetsHost,而无需用户从列表中进行选择。我想创建自己的“选择小部件列表”并加载仅我创建的小部件。为了简单起见;我的应用程序带有我的AppWidgets,我想完全控制将appWidget绑定(bind)到appWidgetHost等。3人在Google论坛中提出了类似的问题:Link
同学们!我的问题是:我有一个带有配置Activity的应用程序小部件(最低SDK-2.1),它工作正常,但有时它开始工作得更慢。我登录并发现之前更新我的AppWidget方法onUpdate收到一组AppWidgetID@OverridepublicvoidonUpdate(Contextcontext,AppWidgetManagerappWidgetManager,int[]appWidgetIds){Log.d("onUpdate",Arrays.toString(appWidgetIds));但事实是我在主屏幕上只有两个AppWidget实例,但数组的长度多则2(二):4,有时
我为Honeycomb创建了一个AppWidget,它运行良好,除了第一次安装时,它没有出现在Widgets菜单中,因此无法添加到主屏幕。重新启动设备将允许它显示,或者在开发期间,从Eclipse发送两次将导致它显示。有什么想法吗?谢谢! 最佳答案 显然EboMike是对的,设置android:installLocation="internalOnly"确实解决了这个问题。如果不指定安装位置,它应该默认为internalOnly,但对我来说似乎不是。也许Honeycomb中发生了一些变化?此外,即使设置了internalOnly,从
我似乎无法从我的AppWidgetProvider类中读取首选项。我的代码在Activity中有效,但在AppWidgetProvider中无效。这是我用来读回bool值的代码:SharedPreferencessettings=getSharedPreferences(PREFS_NAME,0);booleanautoreplyon=settings.getBoolean("autoreplyon",false);但是,我收到“方法getSharedPreferences(String,int)未定义类型小部件”错误(小部件是我的AppWidgetProvider类的名称)。提前感谢
我在AppWidget中使用ProgressBar遇到了一个有趣的情况...文档(http://developer.android.com/guide/topics/appwidgets/index.html)说ProgressBar是受支持的小部件类...让ProgressBar在我的AppWidget中显示没有问题,但问题是我希望它仅在后台处理发生时作为视觉反馈显示给用户。在ImageViews上,我通过RemoteViews.setViewVisibility()执行此操作,一切正常。但是,对于ProgressBar,我得到一个异常,指出ProgressBar不能使用此方法。这是
所以,我有一个小部件,我希望它每60秒更新一次。当小部件首次添加到主屏幕时,它会很好地运行其更新功能。除此之外,它应该启动一个AlarmManager,它将每60秒重新运行一次更新方法。这是它似乎实际上没有做的部分。这是我的代码:publicclassClockWidgetextendsAppWidgetProvider{publicstaticStringCLOCK_WIDGET_UPDATE="com.nickavv.cleanwidget.CLEANCLOCK_UPDATE";@OverridepublicvoidonUpdate(Contextcontext,AppWidget