[英]Android: BroadcastReceiver Time limit
是否為BroadcastReceiver.onReceive方法中運行的操作定義了任何時間限制?
onReceive()
在主應用程序線程上調用,該線程驅動您的UI。 通常,你希望onReceive()
在毫秒內返回,以防你的UI在前台,所以你不要凍結UI(也就是說,有“jank”)。 還有5-10秒的限制,之后Android將基本崩潰您的應用程序。
但是,您無法從onReceive()
可靠地派生后台線程,因為一旦onReceive()
返回,如果您不在前台,您的進程可能會終止。
對於清單注冊的接收器,一個典型的模式是讓onReceive()
將工作委托給一個IntentService
,它有自己的后台線程,作為一個服務,告訴操作系統你的進程仍在做一些工作,應該讓你的過程運行一點時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.