当前位置: 首页 > 面试题库 >

当我的应用程序收到Intent时,如何发布对Dashclock的更新?

龚宏壮
2023-03-14
问题内容

我稍后addProximityAlertLocationManager该类中使用Android的方法添加了位置接近度。

当用户的电话位于特定区域时,LocationManager会将传送Intent到我的应用程序BroadcastReciver,这是处理意图的类:

public class ProximityTrigger extends BroadcastReceiver {

    @Override
    public void onReceive(Context ctxContext, Intent ittIntent) {            
        System.out.println(ittIntent.getIntExtra(WidgetService.KEY_STOP_IDENTIFIER, -1));               
    }

}

我想使用DashClock
API在发生这种情况时显示更新。DashClock有一个publishUpdate可用于显示更新的方法,但是我只能在扩展该类的扩展类中使用此方法DashClock。这应该是可能的,但我似乎无法弄清楚。关于如何实现此目标的任何想法?


问题答案:

由于扩展服务必须发出publishUpdate呼叫,因此您的邻近触发广播接收器应使用
广播或事件总线之 类的东西来要求扩展发布更新。

如果未初始化扩展,则意味着用户尚未添加扩展或DashClock未运行,则将不会发生任何事情,这是预期的正确行为。DashClock启动并添加扩展后,将立即调用onUpdateData并可以发布更新。

有关可以使用的实际类的一些想法,请参见下文:

  • 全球广播 ,使用Context.sendBroadcast在你的动态注册的广播接收器一起DashClockExtension使用Context.registerReceiver。

  • *使用 LocalBroadcastManager进行 *本地广播

  • Otto 或EventBus,这两个框架允许应用程序组件发布和订阅事件。在这种情况下,扩展程序将订阅并且您的接近传感器将发布。

有关全局广播的完整代码段,请参见DashClock项目页面上的第292期。



 类似资料:
  • 我去了我的应用服务 在那里我启用了:应用程序日志记录(Blob)和Web服务器日志记录(存储) 上面的设置开始记录一个. log文件,其中每一行都是对我的应用的HTTP请求,标题如下: 我感兴趣的是为服务器响应HTTP 500的请求记录发布的JSON。我如何从Azure门户实现这一点?

  • 我遵循本教程在我的android设备上接收推送通知。 我可以从Firebase控制台发送推送通知-我还可以在logcat中看到Firebase事件,但我的永远不会被触发。我的应用程序在前台运行。 以下是我发送通知后logcat中的输出: MyFirebaseMessageService.java FirebaseIDService.java AndroidManifest.xml: build.g

  • 如果应用程序未运行,GCMinentService(扩展GCMBasEventService)不会收到通知。 来自:http://developer.android.com/about/versions/android-3.1.html 已停止应用程序上的启动控制请注意,系统会将标志\u排除\u已停止\u包添加到所有广播意图中。它这样做是为了防止来自后台服务的广播无意或不必要地启动已停止应用程序的

  • 我的日志猫: 2022-07-29 21:42:03.128 24303-24303/com.example。newcadviewerapp E/AndroidRuntime:致命异常:主进程:com.example。newcadviewerapp,PID:24303 java.lang.RuntimeException:无法启动活动组件信息{com.example.newcadviewerapp

  • 我得到这个E/flutter(25055)错误时,我正在运行我的应用程序(Flutter, FireBase 我试着更新我的flutter,但仍然得到了相同的日志,这些日志使我的应用程序不稳定,应用程序崩溃了很多 我的颤振医生 C:\src\flatter\bin\flatter。蝙蝠医生——冗长[√] 颤振(通道稳定,2.2.3,在Microsoft Windows[Version 10.0.1

  • 问题内容: 因此,我有一个应用程序(facebook应用程序实体),并且有一个页面。我想通过Java代码(通过restfb或任何其他建议)使用该应用发布到页面。似乎我错过了页面授予应用程序发布权限的阶段。不知道该怎么做。谢谢你们。友利 问题答案: 您只能发布“作为页面”,而不能发布“作为应用”。您需要页面访问令牌,并且需要使用/ page-id / feed端点进行发布。链接与信息和示例代码: h