Using the default message center (ie. [[UAirship defaultMessageCenter] display]; ) I get an assert because the SDK is attempting to use UIKIT on a non-main thread.
Specifically, in UADefaultMessageCenterListViewController.refreshStateChanged - lines 226 through 233 use UIKit and core animation on a non-main thread.
To fix this in my app, I added a dispatch_async to mainThread before calling refreshStateChanged. in retrieveMessageListWithSuccessBlock:withFailureBlock:
Is there a better way to fix this? Are you aware of the problem?