I would suggest putting the Info into the userInfo like this:
- (void)provideContentForProductIdentifier:(NSString *)productIdentifier
{
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:productIdentifier];
[[NSUserDefaults standardUserDefaults] synchronize];
[[NSNotificationCenter defaultCenter] postNotificationName:IAPHelperProductPurchasedNotification object:nil userInfo:@{@"identifier": productIdentifier}];
// i get the crash here when trying to post the notification.
}
Then you can observe the NSNotification with
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(productPurchased:) name:IAPHelperProductPurchasedNotification object:nil];
In -(void) productPurchased:(NSNotification*)notification
you can get the info back:
-(void) productPurchased:(NSNotification*)notification {
NSString *productIdentifier = [notification.userInfo valueForKey:@"identifier"];
}