Skip to main content


Showing posts from August, 2011

Auto-Renewables: Review process

In review Auto-Renewables need to accept receipts from the sandbox environment, because app is redirected to the sandbox.

How to do that?

Choosing Apple Receipt Server - Alternatives:

Smart production-signed App

App knows live version, selects Dev’s QA or production server
Smart production server

Client passes versionServer knows live version, selects Apple’s Sandbox or production server
Reactive production server

Server always tries Apple production firstIf gets 21007, tries Apple sandbox

Android And Apple Now Command Nearly 70 Percent Of U.S. Smartphone Market Share

Android and Apple together now account for nearly 70 percent of smartphone subscribers in the U.S., according to new estimates for July put out today by comScore. Android phones command nearly 42 percent market share, while Apple’s iPhone grew slightly to capture 27 percent. Android is growing faster, up 5.4 percent from April and up 1.7 percent from June, whereas Apple’s share is up 1 percent for the three-month period and 0.4 percent fro the previous month.


NSURLConnection with Accept-Encoding: gzip

For quite some time I ranted about not being able to use compressed network communcation out-of-the-box on the iPhone.

Despite being undocumented (or I just overlooked the hint), NSURLConnection does gzip decompression transparently!

That’s how to use it:

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
// set explicitly:
[request setValue:@"gzip" forHTTPHeaderField:@"Accept-Encoding"];


iEmu Aims To Bring iOS Apps To Android, Windows, and Linux

Meet iEmu, a new project from one of the iPhone’s earliest hackers. The goal? To get iOS up and running in an emulated state on Linux, Windows, Mac, and Android.


How to manage your kids' iOS app purchases

As for parents with kids who have iOS devices of their own, there are a couple of options. One alternative is to set it up so your child can’t purchase anything from the App Store or iTunes Store. If you favor a somewhat more independent approach, you can also choose to manage your child’s purchases by setting up a monthly allowance.


Native Or Web? Bizness Apps Adds HTML5 Platform To Let SMBs Create Their Own Apps — For Both

Bizness Apps’s value proposition is simple: The startup wants to make mobile apps affordable, customizable, and simple to make for the small business owner. Thus, the startup offers a DIY iPhone, iPad, and Android app platform that enables SMBs to create, edit, and manage mobile apps without any programming experience required. You start with a template, customize them to suit your business, and then Bizness Apps makes them native apps and distributes them on iTunes and the Android Marketplace.


Stanley Kubricks 2001er Tablet ist älter als das iPad

Der Kampf zwischen Apple und Samsung nimmt kuriose Züge an. Nun müssen schon Filmklassiker als Beweis herhalten, dass Apple Tablets in der Art des iPad nicht erfunden hat. Samsung hat erste Tablets schon im Jahr 1968 in einem Science-Fiction-Film ausgemacht.


iOS 5 includes early earthquake warning notifications for Japanese iPhone users

Following the devestating earthquake in Japan earlier this year, Apple has added a new early earthquake warning notification option to iOS 5. iOS 5 users in Japan can turn on early earthquake notifications at the very bottom of the iOS 5 Notification Center settings pane. As you can see above, all the user has to do is flick a switch to start receiving these notifications.


Apple Sneaks A Big Change Into iOS 5: Phasing Out Developer Access To The UDID

Apple is making a lot of big changes to its mobile operating system with iOS 5, which is dribbling out in betas for developers ahead of a general release later this year. But there is one big change some developers are just starting to take notice of that Apple isn’t talking about that much. In a recent update to the documentation for iOS 5 (which is only available to registered Apple developers, but a copy was forwarded to me), Apple notes that it will be phasing out access to the unique device identifier, or UDID, on iOS devices such as iPhones and iPads.


Solution A:

Brings back the unique identifier support under iOS 5, it uses the device's mac address in combination with the bundle identifier to generate a new hashed unique identifier.

gekitz GitHub

Alternate Solution B:
Appsfire Announces Open Source UDID Replacement For iOS: OpenUDID

It is based on the NSProcessInfo (see globallyUniqueString), but may change the second time c…

Ten Must-Have Berlin Apps for iPhone and iPad

Fahrinfo Berlin: Timetables and Maps for Public TransportationUrban Art Guide: Guided Art Tours through Selected DistrictsMuseumsführer Berlin: Search for Exhibitions by CategoryZitty App: Event Guide for BerlinQype: Tipps from the CommunityTripwolf: Travel Guide with Tips from the CommunityCityscouter: A Companion during Sightseeing TripsBerlin Unlike City GuideAroundMe: Quickly Find out Information about SurroundingsMarcellino’s: Gourmet Guide for BerlinAir Berlin’s Mobile Services: More Convenient Way to Check inTest Berlin Apps at Gravis Flagship Store in Berlin
Phone Guide Germany

Continuos Integration for XCode projects

Continuos Integration is the practice of integrating changes from many people as often as possible. Instead of merging changes once a month and spending time handling merge errors you try integrate every day, perhaps even every hour. Each integration is built and tested on a server. If there are build errors or test failures, you and your team will be notified right away.

Jayway Team Blog
iOS: Running Unit Tests with Code Coverage in Jenkins/Hudson

Déjà Vu – Your Visual Memory

It looks as the Déjà Vu is the app I was missing in my life! I keep using my iPhone camera as a memory device, snapping photos of business cards, wine labels, books, products I want to buy etc. But I usually end up having a hard time finding them again in my overflowing photo album.

This is where Déjà Vu comes in. The app helps you remember things visually. Use the iPhone app to snap visual memos on the go. A simple interface and image recognition support you in organizing your visual memos. I am definitely giving this a try!

Androids Are For Cheap Pessimists, iPhones Are For Worldly Optimists

Ever wonder what’s the real difference between Android and iPhone users? According to Hunch, Android users are 10 percent more likely to be men, skew younger, and 20 percent more likely to be politically conservative. As you can see from the infographic below, they have good incomes, but iPhone users tend to have higher household incomes. Android users are also “slightly more likely to be pessimists,” introverts, and are 29 percent more likely to want to save their money.


Class Extensions Explained

With class extensions you mainly can differentiate public and private methods of your class implementation.

Class extensions were designed to solve two problems. The first was to enable to compiler to better validate the private interfaces a class might have and the second was to solve a subtle, but gnarly, problem with properties (another feature added to Objective-C 2.0).

A property that is publicly readonly, but privately readwrite without opening properties up to all of the fun fragility associated with categories.

bbum's weblog-o-mat

Xcode Organizer is not symbolicating?

Then fix the symbolication script and get it back working :)
In the OS Version section the script is expecting a build number - which sometimes is missing; we will fix this.

You will find the xcode developer script in following path:
Edit this file and look for following method:
sub parse_OSVersion { my ($log_ref) = @_; my $section = parse_section($log_ref,'OS Version'); if ( $section =~ /\s([0-9\.]+)\s+\(Build (\w+)/ ) { return ($1, $2) } if ( $section =~ /\s([0-9\.]+)\s+\((\w+)/ ) { return ($1, $2) } die "Error: can't parse OS Version string $section"; }
Add the following if-clause and you are good to go:
sub parse_OSVersion { my ($log_ref) = @_; my $section = parse_section($log_ref,'OS Version'); if ( $section =~ /\s([0-9\.]+)\s+\(Build (\w+)/ ) { return ($1,…

PHP plist parsing

The implementation above transforms a Plist file into a PHP value structure, but it could just as well transform it into a JSON string or just about any other data interchange format.


GitHub:Issues App

Create, manage, and discuss issues from your iPhone


Wuala - Der sichere Online-Speicher

Backup. Sync. Teilen. Zugreifen.
Verschlüsselung Ihrer Daten auf Ihrem Computer.

Works like Dropbox - nice alternative.



Prowl is the Growl client for iOS. Push to your iPhone, iPod touch, or iPad your notifications from a Mac or Windows computer, or from a multitude of apps and services. Easily integrate the Prowl API into your applications.



With Hockey the provisioning of beta applications can be easy as clicking on a link on a webpage and the application will notify the user automatically when it starts, if there is an update available and the user can install it from within the application. Wherever they are and whenever they want. No iTunes required, in fact, not even a computer is required any more! All that is required, is a webserver and some simple code to be integrated.

Buzzworks Blog
Hockey GitHub (free version)

Live Crash Reports
HockeyApp collects and manages crash reports for your live and beta apps. Symbolication is done automatically and crashes are grouped by stack trace.

It has never been easier to check and improve the stability of your apps.

Distribute Beta Versions
Upload your beta versions to HockeyApp and distribute them to your testers. Do
in-app-updates with HockeyKit. Analyze charts and statistics about tested device types, languages, test time and more.

Multiplatform Support
Crash reports are working…

Android festigt Marktführerschaft, Windows Phone 7 verliert

Im zweiten Quartal 2011 lief auf fast jedem zweiten verkauften Smartphone Android. Damit kann Googles Android-System die Marktführerschaft festigen. Symbian verliert weiter an Bedeutung, während Apples iOS leicht zulegt. Mindestens Stagnation gibt es bei Microsofts Smartphonesystemen, die von Samsungs Bada-Plattform überrundet wurden.

Smartphone-PlattformVerkaufte SmartphonesMarktanteil1. Android46,8 Millionen43,4 Prozent

With Search And Big Publishers, Showyou Turns Your iPad Into A Visual, Social Remote Control

When Showyou first launched last April, we noted that it was sort of like a Flipboard for video content. A new update out today kicks it up a notch by making things more visually appealing while adding more content and making it easier to find.


Automating Over The Air Deployment for iOS

Over the air deployment is based on a new command in the build menu of Xcode called “build and archive” which packages the application with an embedded provisioning profile.
There have been many questions on how to integrate this feature in a continuous integration process.
The “xcodebuild” command is well known : it builds an Xcode project from the command line and generates an “.app” file.
You can use this command to build your application from a script ran by a software factory.
But the generated file cannot be distributed over the air since it misses the embedded provisioning profile.
We need to build the project into an “.ipa” file, containing the provisioning profile and signed with your developper identity.
To be able to find the command line, the trick was to watch the system console log while running a “build and archive” through Xcode.

#!/bin/sh # # # Created by Vincent Daubry on 19/01/10. # Copyright 2010 OCTO. All rights reserved. PROJDIR=${WORKSPACE}/___PRO…

UI Automation with iOS 5 beta 5

FIXED: Instruments overwrites the loaded automation script, even if another program is editing it.FIXED: The play and record buttons in the Automation instrument script editor may not work properly after targeting an application that was launched by a trace session and has ended. They may also not work if you target an application that was suspended. If you run into this problem and it persists, you may need to close and reopen the trace document to get back into a functional state.FIXED: When capturing actions into a script using the Automation instrument, interfaces with web views or table cells that contain a high number of off screen elements may take an extremely long time before returning with an expression.The lock() and unlock() functions of UIATarget have been replaced with the lockForDuration(seconds) function.Starting in iOS 5 beta 2, you can now trigger the execution of an UI Automation script on an iOS device from the host terminal by using the instruments tool. The comma…

iOS oder Android: Karte zeigt US-Marktanteile

Apple Disabling iOS 5 Beta Installs and Developer Accounts Over Sales of Device Slots?

Since late yesterday, MacRumors has received a few reports of users who have seen their devices running various beta versions of iOS 5 shutting down and returning to activation mode. The reports have been sporadic, with some users suggesting that earlier beta versions may simply have been expiring and been disabled by Apple.

Mac Rumors

Augmented-Reality-App für iPhone der Berliner Grünen

In der neuen App "Da müssen wir ran" der Berliner Grünen können iPhone-Besitzer jetzt virtuell Orte markieren, für die sie sich Veränderungen wünschen. Möglich gemacht hat dies der Münchner Augmented-Reality-Entwickler metaio.


Axel Springer führt im App Store die Top-Charts Nachrichten iPad an

Gut eineinhalb Jahre nach dem Start der Initiative zur Etablierung kostenpflichtiger Inhalte im mobilen und stationären Internet zieht Axel Springer eine weitere positive Zwischenbilanz. Journalistische Medienmarken wie BILD und DIE WELT werden vor allem auf neuen mobilen Endgeräten wie Smartphones und Tablet-PCs intensiv genutzt; sie verkaufen über alle Plattformen hinweg jeden Tag mehr als 108.000 digitale Ausgaben (BILD) bzw. knapp 17.000 digitale Ausgaben (DIE WELT).

Axel Springer Pressemetteilung
Detaillierte Nutzungsdaten (PDF)
Springer verdient mehr mit Online- als mit Print-Werbung, Spiegel

Understanding the Git Workflow

If you don’t understand the motivation behind Git’s design, you’re in for a world of hurt. With enough flags you can force Git to act the way you think it should instead of the way it wants to. But that’s like using a screwdriver like a hammer; it gets the job done, but it’s done poorly, takes longer, and damages the screwdriver.

Benjamin Sandofski