You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Android typically traps ANRs (at least for touch events) after 500ms. By having our ANR timeout higher than that is it possible we could ANR, present a wait/close message, answer close, before the watchdog's ANR event fires?
My thought is yes. Do you see any ramifications about running with a 500 ms timeout in production? I'm only talking about the main thread monitor. I do my own sleeps in other threads that would definitely trip it if I were monitoring them too.
The next comment is really more an annoyance with Google. I absolutely hate not being able to interrupt and join ANRWatchDog onTerminate() because for whatever reason Google refuses to give us a means of (easily / logically) determining when an application closes.
I have the following in my onTerminate() but I know it will never be called. I'm guessing this why you simply just create an anonymous instance in all your examples, correct?
Android detects ANRs after 5 seconds, same as this library: "While your activity is in the foreground, your app has not responded to an input event or BroadcastReceiver (such as key press or screen touch events) within 5 seconds." https://developer.android.com/topic/performance/vitals/anr.html
Android typically traps ANRs (at least for touch events) after 500ms. By having our ANR timeout higher than that is it possible we could ANR, present a wait/close message, answer close, before the watchdog's ANR event fires?
My thought is yes. Do you see any ramifications about running with a 500 ms timeout in production? I'm only talking about the main thread monitor. I do my own sleeps in other threads that would definitely trip it if I were monitoring them too.
The next comment is really more an annoyance with Google. I absolutely hate not being able to interrupt and join ANRWatchDog onTerminate() because for whatever reason Google refuses to give us a means of (easily / logically) determining when an application closes.
I have the following in my onTerminate() but I know it will never be called. I'm guessing this why you simply just create an anonymous instance in all your examples, correct?
The text was updated successfully, but these errors were encountered: