gpt4 book ai didi

android - 偶尔延迟 10 秒开始 Activity

转载 作者:行者123 更新时间:2023-11-29 14:18:05 25 4
gpt4 key购买 nike

我有一个可穿戴应用程序,其中 WearMessageListenerService 的 onMessageReceived() 启动了一个 Activity ,一切都在正常运行。

但我观察到,在调用 startActivity() 和调用 Activity 的 onCreate() 之间,偶尔会有相当大的延迟,大约 10 秒。

我的代码中没有发生任何可能导致此问题的复杂情况 - 它是一个非常非常简单的小程序,我只有这两个类 - 监听器服务和 Activity 。没有线程,没有后台处理,没有同步调用,没有阻塞,没有类似的东西。

这是来自 WearableListenerService 的一些代码:

public void onMessageReceived(MessageEvent messageEvent)
{
Log.i(TAG, "WearableListenerService onMessageReceived() with: " + messageEvent.getPath());
Intent = ....
....
Log.i(TAG, "Going to start activity");
startActivity(intent);

这是 Activity 的 onCreate:

protected void onCreate(Bundle savedInstanceState)
{
Log.i(TAG, "***************** ACTIVITY onCreate() ******************");
...

当我观察到延迟发生时,我可以看到这样的日志(为简洁起见缩写)

03-25 12:57:35.565   WearableListenerService onMessageReceived() with:  CALL_STATE_RINGING
03-25 12:57:35.565 Going to start activity
03-25 12:57:43.576 WearMessageListenerService onDestroy()
03-25 12:57:45.348 *************** ACTIVITY onCreate() **************

请注意在创建 Activity 之前此日志中有 8 秒的间隔。

有没有人在一般 Activity 中观察到这样的延迟,或者这可能是可穿戴设备特有的? (在我看来,可穿戴功能似乎有点古怪,我似乎经常观察到这样的事情)。

我能做些什么来找出为什么有时会有延迟,并消除它。

最佳答案

您是否尝试过在开始 Activity 之前使用唤醒锁?您的设备可以在 Activity 开始前进入休眠状态。
我认为这里最好的方法是使用 acqure(long timeout) 自动释放锁的方法。

关于android - 偶尔延迟 10 秒开始 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29289700/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com