I'm trying to integrate Exact Target MobilePush SDK version 3 into an iOS application. So far I haven't found any step-by-step documentation for this process. The SDK does include an example, but the example has not been updated for version 3, so the process has been frustrating. If anyone has leads on better documentation that would also be very much appreciated.
Following the code in the example, I try to start MobilePush in the app delegate's
application:didFinishLaunchingWithOptions: method like this:
[[ETPush pushManager] configureSDKWithAppID:@"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" andAccessToken:@"xxxxxxxxxxxxxxxxxxxxxxxx" withAnalytics:NO andLocationServices:NO andCloudPages:NO];
This line causes some log output which looks like this:
2014-01-28 15:58:55.812 MyApp[1460:907] MobilePush configured for ET App ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
So far so good. However, a little later in the startup process, I am getting an uncaught exception which crashes the app:
Uncaught exception: *** setObjectForKey: object cannot be nil (key: app_version)
When I comment out the call to
ETPush configureSDKWithAppID:, shown above, this exception is not raised. What do I need to do in order to avoid this exception when initializing MobilePush?
I have tried this with and without the other initialization code and other ETPush events from the example in the SDK, but I get the same crash regardless. It looks like maybe I need to set
app_version somewhere, but I see no references to
app_version anywhere in the example project.