【问题标题】:Android Widget RefreshAndroid 小部件刷新
【发布时间】:2023-03-09 12:38:01
【问题描述】:

我已经实现了一个小部件,但在刷新它时遇到了问题。 我得到了最初的 onUpdate ,如果我离开它很长时间就会再次得到。

但是,我希望主应用程序中的更改自动反映在小部件上。 我如何让它刷新? 有没有办法从我的活动中调用小部件(我只是做一个静态例程)还是有一种方法可以强制每次手机返回主屏幕时调用我的“onUpdate”?

【问题讨论】:

  • 不要假设您的小部件会出现在主屏幕上。

标签: android widget onupdate


【解决方案1】:

您是否使用服务来更新 RemoteViews 来实现您的小部件?如果是这样,您可以使用 Intent 启动该服务,并且小部件将更新。

Intent widgetUpdateIntent = new Intent(context, MyClassName.UpdateService.class);
context.startService(widgetUpdateIntent );

【讨论】:

  • 我不确定如何在小部件中设置服务来服务远程视图。有没有可以指点我的例子?
  • 是否不能让我的应用程序活动向小部件发送事件以进行刷新?
  • 终于明白了,你的意思是让服务更新小部件,然后我可以从任何地方调用该服务。这样做 - 很有效,谢谢!
  • 太好了,如果解决了,请单击“打勾”关闭此问题。干杯。
【解决方案2】:
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarmManager//.setRepeating(AlarmManager.RTC_WAKEUP, 500, 2, pendingIntent1);
.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, 500, pendingIntent1);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-28
    • 2021-11-18
    • 2021-01-10
    • 2011-06-06
    相关资源
    最近更新 更多