- Clone the repository.
- Initialize and update submodules to use Flurry 8.5.0.
git submodule init
thengit submodule update
- Open the project in Xcode 9.3.
- Set the target's Bundle Identifier.
- Set the apiKey variable in AppDelegate.swift.
- Run the app. Enable push notifications when prompted. The push token will be logged to the console when it is received.
- Send test push messages to the token from the Flurry/Marketing/Campaigns web page.
- Observe logged messages.
- Monitor app messages from the Console app.
- Force close the Flurry Push app.
- Send a test notification.
- Dismiss the notification banner, if any.
- Launch the app from the iOS Notification Center by tapping on the notification item.
- The console will show the app starting. Sometimes notification-related messages are logged. The app hangs for 15 seconds before this is logged: "Location callback block not executed in a timely manner!" iOS then kills the app.
- Watching the app console during startup, Flurry appears to use CoreLocation. This is unexpected and unwanted. How do I prevent Flurry from retrieving location?
- Launch the app.
- Send a test notification.
- Tap the notification's banner.
- This calls userNotificationCenter(_:didReceive:withCompletionHandler:)
- I delegate this call to FlurryMessaging.receivedNotificationResponse(_:withCompletionHandler:)
- The Flurry completion handler is unexpectedly called twice. Here are logged events:
default 14:14:31.999680 -0500 Flurry Push Calling FlurryMessaging.receivedNotificationResponse...
default 14:14:31.002411 -0500 Flurry Push FlurryMessaging.receivedNotificationResponse complete.
default 14:14:31.006691 -0500 Flurry Push FlurryMessaging.receivedNotificationResponse complete.