Last time we talked about getting busy with iCloudKit. Work is coming along nicely, and we’re developing for iOS and OSX as usual… But iCloud also means the internet, and therefore web apps or apps that live in the cloud if you want.
To this week we started to learn or refresh our knowledge of HTML(5) and CSS. We’ll complete the website next week or so, and start working on the web-counterparts of the iOS app.
You’ll be able to log in with your iCloud account and we’ll try to get the same behaviour and features as with the iPhone and iPad. It will be interesting…
In our next blog we’ll give an update of the apps and the web-developments.
It’s not that we didn’t do anything with iCloud before, but it has always been an add-on. Most apps we developed for Mac or iPhone, iPad have used iCloud in some way. But it was always a way to transfer data from one device to another, like iCloud Drive, or shared settings between iPhone and the Apple Watch…
With the arrival of Apple TV, Apple (once again) stressed the fact that they expect the apps to retrieve the bulk of their data from the cloud. In our case this is mostly iCloud.
For the less technical people, iCloud provides 4 basic ways to work with the iCloud.
1. Settings (NSUserDefaults): a way to share a limited set of data between apps with the same iCloud account.
2. iCloud Drive: a way to store documents in iCloud and open, save, close and delete them in any app. The documents are linked to an iCloud account.
3. CoreData: a database that can be used and synchronized between apps on different devices (using the same iCloud account).
4. iCloudKit: a transfer mechanism to store data in iCloud, and access the data from anywhere with any app. The data can be public or private (using an iCloud account).
The first 3 options basically are all about your data, linked to your iCloud account, and sharing them over your devices. iCloudKit is a way to publically share data with anybody, but also make a subset if the data private.
So is it too late to start with iCloud? No, of course not! It is a bit different for the developers, because you never know when or if a server in the cloud will answer. Your design has to take other things into account and you keep the complexity as low as possible 😉