On of the most obvious problems with developing on CloudKit is that you can't just sign up a bunch of users with fake email/pw combinations like you can with services like Parse Server. Much like Facebook connect, your device is tied to iCloud. So how do we generate multiple sandbox test user accounts? That was what I was trying to work out today.
So in this tutorial, we're going to create a bunch of REAL email accounts. Next, we'll create some test users in iTunes connect. Then we'll use these test user accounts to actually sign on to iCloud on your test device(...
Think back a few years ago to how social apps handled asynchronous actions, such as saves, deletions, or other network actions. That's right. They froze up the UI. They would throw up a spinner or a modal screen that would block the user from interacting with the app until the action was completed...or until there was an error.
Yeah, they're not doing that so much these days. Instead, apps are making efforts to allow users to continue using the app after initiating even relatively long back-end processes. They do this by first assuming that most network actions will be successful. In other words, you only need to alert your users in the relatively rare case of a network action failure.
Secondly, alerts are not tied to the view where the original back-end process was initiated (for example, a user m...
This is just a quick and easy post for something that I thought would be a pain, but is quick and easy to add: A UIRefreshController.
UIRefreshControllers are what you use to do a Pull-to-refresh on any subclass of UITableViewController. Typically, this allows your users to see if there is any new data available. Apple recommends this only for UITableViewControllers. Using it elsewhere is possible, but can give unpredictable results.
How easy is it? This easy:
1. Add a UIRefreshControl property to your @interface()
2. Add a method to set up the refresh control. Call it from ViewDidLoad (because it only needs to be set up once). The refresh will now start any time a user pulls down on the screen. If using UIControl actions like UIControlEventValueChanged is a mystery to you, check...