1) My plist configuration to provide backgroundmode:
[[UIApplication sharedApplication] setMinimumBackgroundFetchInterval:1.0];
-(void)application:(UIApplication *)application performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
I'm afraid this is hard to debug on a device because you're not guaranteed it is called in the amount of time you specify.
setMinimumBackgroundFetchInterval means that it is not called in an interval which is smaller than the value you specified. But there's no
So if iOS decides to call your app just once a day or even just once a week than it won't be called more often regardless your
minimumBackgroundFetchInterval. AFAIK iOS decides when to call
performFetchWithCompletionHandler measured by the pattern when and how often the users start's the app.