affordable hardware for iOS development: Mac Mini Tuning

If you want you plan to enter into the iOS development program and its own app, one needs necessarily a Mac, which is not exactly cheap. In the following article I will describe, as I for 350 € (November 2012) I bought a Mac to develop my iPhone apps and this upgraded for Xcode.

For iOS development for iPhone and iPad you need a Mac with an Intel processor mandatory. Unfortunately, these do not have particularly low :(

Furthermore, you need mandatory for programming Xcode IDE, to test for iPhone and iPad, and to bring the app to the Store.

The latest version of Xcode (4.5 current) turn necessarily requires Mac OS X 10.7, what the minimum requirements at least 2GB of RAM and an Intel Core 2 Duo needed (Nights, an Intel Core Duo is not enough!).

As an effective alternative, I bought a used Mac Mini with reason

more…

Part 2: Clean Code – correct and incorrect comments

According to the book (Chapter 4):  “Clean Code – Refactoring, Patterns, Testing and techniques for clean code” of Robert C. Martin.

“Comment not bad code – write to him.”

(Brian W. Kernighan und P.J. Plaugher)

 

Comments can be both, helpful and hindering:

  • hindrance, if you are outdated and incorrect information supply
  • disturbing, if you are too long and unnecessarily
  • helpful, if you are well placed

The use of comments “our inability to balancing, clear to us in our code to express”(S.85). Before writing a comment, one should consider before, whether the code can not be further written expressive.

more…

Part 1: Clean Code – Rules for good, clean code

To write clean code and easy to understand the ultimate goal is a good IT Projet. Much depends on:

  • Maintainability
  • Training time for other programmers, means fast, what do individual functions
  • Robustness to changes
  • Testability, everything falls together, with small changes, can quickly stable updates are
  • Popularity with other programmers e.g.: bei Open Source Projekten, as a negative example is called XT-Commerce

The highly recommended standard work on the subject is “Clean Code – Refactoring, Patterns, Testing and techniques for clean code” of Robert C. Martin. In this article, chapter 1 to 3 treated.

Meaningful names

The name of a variable, Function or class should declare immediately, why you exist, what it does and how it is used. If a variable requires a Comment, It expresses not its purpose.

Bsp:

int d //Anzahl vergangener Tage
besser ist:
int daysSinceCreation;

Pronounceable name use

No constructs with unclear abbreviations as: int daSiCre instead of daysSinceCreation.

Searchable name use

Modern IDEs make searching easy, but it's no, when you have to look for the letters e and a control variable is swamped by results.

Variable names with a letter must only be used as local variables in short methods.

more…

iPhone crashes when sending mail

With me when sending the emails the program will crash, because the name of the recipient “|” contained. With such special characters, the iPhone internal mail program do anything.

Solution: Recipient E delete and type of hand, so that no longer contain special characters.

Example: So instead of the variant gepseicherten “Mother|Potato”, after which an email address is, just type “”.

erste iPhone App im App Store

On Saturday it was time, my first app has made it into the App Store: CD purchase ZeeDee.

The waiting process for inclusion in the App Store by Apple and testing went pretty fast: Monday night I uploaded the app with the Application Loader, on Friday came the news, that is now being tested and on Saturday morning, the app in the App Store made. My App Store waiting time was thus only about. 5 Days, was absolut ok ist.

App: I need not say, that this app will revolutionize all apps and other apps superfluous. In the future, you need only purchase the CD app, and the rest can get away. This eliminates annoying rumwischen to the display on his latest app selection to enter page. :)

iTunes Connect is not in the App Store to find

After publishing my first app purchase Cd ZeeDee, I wanted to download the app to track the app sales / downloads: iTunes Connect Mobile.

And I have the problem, I can not find in the App Store on my iPhone could:

20110829-101738.jpg

The solution was, search on my iTunes on the PC / MAC the app, where I could find it and install it from there. Simply connect iPhone, In iTunes “Free App” Click and then synchronize, if necessary.

 

Probleme mit dem Apple Application Loader

The hochzuladene. App file located in the folder Projekt-Name/Build/foo.app. This must be zipped and then accepted by the Loader. To test pre-, what problems there are, should be top left button, set: Active Configuration->Release. The button is the same, where you can also switch between simulator and device.

If my uses for its app for Apple uploads for testing and for the first time with the Application Loader, it may come to the following problems:

application executable is missing a required architecture At least one of the following architecture(s) must be present: armv6

This error can be avoided only with a change of version of the Application Loader. Who Version 1.4.1 has should 1.4 or application loader 1.3 install.

Ask at this Apple also begins at once to rummeckern, that the icon in 57×57 Pixels and must be saved as png. The meaning totally eludes, because icons look at the size on the iPad and iPhone4 really pixelated. Therefore it is recommended to create multiple icons in the following sizes:

57×57 (iPhone), 114×114 (iPhone4), 72×72 (iPad) and 512×512 (who knows, what's coming)

How to put my app in the App Store Application

If you have programmed an app and upload the good piece in the App Store want for the whole world,you have to you from one account Apple Developer Program get. This costs 99$ per year, and it should be noted, that Apple schmeist the app from the App Store, if the account is not paid annually.

The app must be followed ITunes Connect be registered:

  1. App Name: only appears in the App Store.
  2. SKU Number: Hand-crafted ID for the app
  3. Bundle ID: im apple developer center zu erstellen
  4. App Description Plain without HTML (max 4000 Bytes)
  5. Keywords for Search, very important. Hint: inspired by Google Analytics keywords can (max 100 Bytes, corresponds to approximately. 10 Keywords)
  6. 2 Categories, of 20 possible, where the app should appear e.g.: Lifestyle oder  Utilities
  7. a support website and / or a general website about the app (beides optional)
  8. Screenshots der App, you want to appear in the App Store. from the iPhone and / or iPad
  9. a logo for the App Store in 512×512 Pixels and at least 72dpi

The application code can confortable with the Xcode Application Loader (/Developer/Applications/Utilities/Application Loader.app) be uploaded.

If you have problems reading Xcode Application Loader

IOS check, whether a camera is present

Since the apps have to work on all iOS devices, including the iPod Touch belongs, the no camera in the older versions contain, following should be considered:

  1. When necessary use the camera from within the app, must in the foo-Info.plist a note under Required device capabilities be made. Then the app installed for devices and displays, which have a camera.
  2. For possible use of the camera, this should be checked in code:
        if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera] == NO){
            NSLog(@"Kamera nicht vorhanden");
        }
        else{
            NSLog(@"Kamera vorhanden");
        }