This is a handy addition to your bag of tricks:
Extremely Handy iOS UI Event Tracking Library (Perfect For The Performance Obsessed)
Anyone who has used an iOS device has experienced the frustration caused by a stuttering or pausing user interface.
While users may not notice these small hiccups on the desktop, it’s impossible to miss on the iPhone or iPad where the only thing on the screen is your app.
I’ve mentioned an excellent guide on multithreading with GCD so many of these situations can be avoided, but sometimes you need to do things in the main thread that could be disrupt the user’s experience.
Today I came across an open source library that tracks UI events which is perfect for those times…
Specifically, if you have any content that refreshes off the web, it would be nice to hold off while the user is actively interacting with it, wouldn’t it?
Honorable mention to an interesting pattern of packaging notifications we hadn’t encountered before:
extern const struct OPEventTrackerNotifications {
__unsafe_unretained NSString *started;
__unsafe_unretained NSString *stopped;
} OPEventTrackerNotifications;
const struct OPEventTrackerNotifications OPEventTrackerNotifications = {
.started = @"OPEventTrackerNotificationStarted",
.stopped = @"OPEventTrackerNotificationStopped",
};
That is rather more elegant than the long list of clumsy names scattered around the code we generally use, indeed.
MAY