BuySellAds.com

If you like my tutorials, you will love my book . It is chockful of advanced programming techniques and the only comprehensive barcode reference for serious iOS developers.
Our DNA is written in Objective-C
Jump

San Francisco, here I come!

I’ve been hired by scribd to help jumpstart one of their iOS-related projects. That means I’ll soon grab my bags and hop onto a train that brings me to Vienna from where my plane leaves early morning Saturday, March 12th. I will be flying via London Heathrow to San Francisco where two busy work weeks are awaiting me.

I am mentioning this for some reasons, obvious and less obvious ones. Of course I like to gloat a bit, but I am also mentioning my trip because it might cause extensive delays when responding to your e-mails.

Just how does one land such a gig? I can only assume that my online activities and networking have played a role. This includes my educational articles from which people might deduct that I am serious about Cocoa. It also includes my open source projects, one might think that CoreText might be one of the technologies that scribd has a vested interest in.

Read more

Accessing the iOS System Log

Peter Reinhardt asks:

The app AppSwitch displays the console entries from NSLog logging in the iphone app. I tried to figure out how they do it but couldnt find an API. Do you have an idea?

Intriguing question! My first gut reaction was that the guys from AppSwitch must have some magic sauce as I didn’t know of a way to access the console log on device like the Xcode organizer is able to. My first response was that probably they are doing some stderr bending as is possible with c++. But then I bought the app to see their trick with my own eyes.

In this blog post I’ll show you how that’s done.

Read more

JSON versus PLIST, the Ultimate Showdown

Communicating with web services you have to decide on a way to transport the date back and forth. Recently – with the help of the popular Twitter-API – JSON seems to have come ahead in the race. Other contenders are property lists and XML. Property Lists (PLISTs) are available in XML-Text and a binary (“old”) format and are widely supported in the Apple APIs which makes them a joy to work with.

JSON files on the other hand are easy to be generated server-side as they are basically just concatenated text, much less verbose than pure XML. The binary alternative might also be a contender when it comes to performance in transmission and parsing, provided some component is installed on the server to generate them.

In this blog article we are trying to answer the question once and for all what you should use in your own apps.

Read more

Summertime 1.1

Summertime is my app that helps you to never be surprised by Daylight Savings Time transitions. A customer nudged me to update the app in time for the upcoming transitions. Since he is traveling a lot I needed to add the capability of configuring multiple time zones.

I spend several days to enhance the functionality as described below and to polish it to a level where I can release it in time for the upcoming DST transitions. March 13th in the US and March 27th in Europe.

Updates

  • NEW: Completely new Design
  • NEW: Set multiple time zones for your travels
  • NEW: Choose “Local Time Zone” to be automatically updated to your local time zone
  • NEW: Multi-Language Time Zone picker

The update is now under review by Apple.

Read more

iWoman 2.0.3

In this quick-fix update for iWoman I addressed a bug that could only be seen by users of the basal temperature feature.

Changes

  • FIXED: The basal temperature chart would only show the first 30 entered values.

Update was approved by Apple on March 8th it is available via the app store.

You Can Thank Me

You might have stumbled upon my site because of the variety of iOS development topics I am covering. I generally try to make any interesting thing I’m learning myself into an educational blog post. There are the things I stumble upon myself, those I document in the Recipes section. And whenever somebody sends me a question I try to answer it with code, examples and so that both our knowledge increases.

Let me summarize the ways how you can express your gratitude. There is a variety of options you have and if you make use of them I will be happy. Which in turn causes me to write more. Win-Win.

Read more

For a Fist Full of Apples

Last week and today Apple revealed several new iterations of mobile hardware. Let’s have a brief look as to what those mean for us developers who depend on Apple hardware both for our customers as well as to do our development on.

Generally speaking there was nothing truly revolutionary in it for us on either of these days. Is Apple stabilizing and focussing on were they are truly raking in the money? You bet.

No more revolutions, I fear.

Read more

Translating NSTimeZone Geopolitical IDs

For my new version of Summertime I am building a time zone picker. You can get the known time zone names from the NSTimeZone class, but unfortunately Apple does not give us any localization of these. The localizedName:local: method gives you localized names of the time zones itself (e.g. “Pacific Standard Time”) in various formats. But what I found to be missing is a way to have the geo names localizable as well.

If I have my iPhone set to German I want to find my timezone by entering “Wien”, not “Vienna”.

My initial thought was to keep this to myself, but since I only speak German and English I can never hope to have the translations be perfect unless I would pay several translators to comb through them. And you know, Google Translate is great, but not 100%. So I started a new Open Source project on GitHub: NSTimeZone+Localization which aims to remedy this.

Read more

LuckyWheel 1.2

It’s been a while since we last updated our game LuckyWheel. There was a nasty bug on iOS 4.x that prevented the keyboard from appearing causing a great deal of frustration. We also used the opportunity of polishing the graphics and adding Retina support.

Changes

  • FIXED: Keyboard not appearing on iOS 4.x
  • UPDATED: Now with Retina Graphics
  • NEW: Lite Version has IAP option to purchase full version question pack
  • NEW: Lite Version has IAP option to remove ads

The new version has been submitted to Apple and is awaiting review.

Apple Subscriptions

The hot button topic these days is Apple’s “new” subscription service and the conditions they are enforcing on it. Not only are they drawing harsh criticism from publishers for not letting them have all the users data (to be sold to advertisers), they are also catching fire for driving poor Readability out of business (or from the app store).

What’s forgotten in all this commotion is that the truth of the matter is far from all the buzzwords. As usual the lack of actual news from Cupertino is prompting the big tech blogs to bash Apple a bit, citing “sources from the publishing industry”. What the pundits even like better is when developers write something to be linked to, like the Readability guys are doing in an open whining letter to Apple.

Usually I prefer to ignore this link-baiting and attention-deficit-syndrome. If developers think their work gets to little attention then they start ranting publicly hoping to be heard and the major public outcry persuade Apple to give in. I’ve been guilty of that myself at times.

But in this blog post I want to explore why Apple has every right to what they are doing. I fully support their message.

Read more