Starting with iCloudKit…

icloud_icon_2015-100607656-largeIt’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 😉

Advertisements

Tyna – xliff editor

logo_128Tyna is a xliff-editor for translators and Apple developers (Xcode users).

When you make a multi language app, the different languages can be exported language by language in a xliff-file. Tyna allows you to open and edit the file to add the translations for that language.

Are there no tools to do this? Sure. Why did we need to write this tool? The short answer is consistency of the translations over the files and speed.
If you have an app that uses a piece of text several times in the app, because you have the same text on several screens, or you have the same features in the today or share extension or on the Apple Watch extension, you’d like to be sure, you use the same translation in all places. If you simply edit the xliff- file you’ll have to edit the same text in several places all over the file. This is very bad. With Tyna, we alphabetically order all texts no matter where the text comes from or is used. This way you see all the “same” text together, and on top of that, you can edit all the “same” text in one-click. Done. This saves us several hours on every project. Well worth the 2 days it took to make this app.
Have fun!