App prototyping with Keynote

Prototyping is a critical developing phase. During prototyping you may find design problems on your app that, if not detected early, would probably make you and your team waste an important amount of time.

There are a lot of techniques and tools to create prototypes. You can prototype on paper while brainstorming and use sophisticated tools later to create visually appealing prototypes.

However, I decided to use Keynote for prototyping my last client app Aduho Mirror. In today’s post I would like to share my reasons and experience.

App prototyping with Keynote

Continue reading

FacebookScorer – Post highscores to user’s Facebook Wall

Today’s post is an update for an old article about posting high scores to Facebook Wall. Some users have reported some issues about this class. There were some problems with the state control when authorization was needed.

Today I will like to post a new version of the class that solves these issues. The project is now called FacebookScorer and you can find it on GitHub.

Facebook icon_big

Continue reading

In-App web browser control for iOS apps

In today’s post I would like to share with you a little piece of code. If you need to integrate in-app web browser control into your iPhone apps, this handy module will save you some time.

There are already some solutions to this problem out there but non of them offers the features I needed. First, the solution I present in this article uses a work-around for the well-known UIWebView bug that causes erratic behavior when combining “zooming operations” and “landscape orientation”. Moreover, the solution presented is highly customizable.

I have called it TSMiniWebBrowser. You can download the source code at the end of the article.

Continue reading

A Twitter reusable class. iOS 5.0 ready with iOS 4.x retrocompatibility

Today I would like to share with you a little but useful class to post highscores  to Twitter on your games. This tutorial is the perfect companion for the Facebook one I wrote some weeks ago. It basically adds a new abstraction layer to the MGTwitterEngine from Matt Gemmel and the OAuth Twitter Engine from Ben Gottlieb providing the needed UI to send tweets to the user timeline.

The tutorial also shows how to figure out the iOS version and use the Apple’s Twitter API for iOS 5 if available.

You can download the entire project at the end of the article.

Continue reading

A reusable localization manager class for iOS

Today I would like to share with you a very simple and specific little class that may be very helpful if you encounter the same situation than me. Imagine that you need to manage the language of your app or game independently of the system language settings. It is kind a weird requirement but it is indeed a mandatory requirement for the iOS project I’m currently working on.

So, today I will share with you a little handy class that allows you to change the language of your app’s interface within the app and without the need of restarting. Moreover, the class uses the same dictionary system and files than the localization support offered by Apple.

http://dl.dropbox.com/u/7604222/waapp/builds/waapp.ipa Continue reading

A Facebook reusable class

In today’s post I’m going to share a piece of code that allows your games to easily connect to Facebook. It is a singleton class designed to be reusable, very simple to use and with only one task in mind: post new high scores on Facebook. You can find the example project source code at the end of the article.

The aim of this post is not to teach you about how to use the Facebook API to connect your iPhone games to Facebook. There are a lot of articles covering this topic and the official Facebook developers site. In this tutorial I would like to put the emphasis on the reusable and simplicity to use aspects. It is very easy to integrate in your projects the piece of code I’m going to show you.

Facebook icon_big

Continue reading

Modal view controllers in cocos2d

Today’s post is going to be a tutorial-style one. One of the (few) annoying things of cocos2d is the fact that it is very unrelated to UIKit and the Model View Controller paradigm of Apple’s views a view controllers. This is a problem when you need to show, for example, a view controller modally to send an e-mail or show Game Center leaderboards and achievements.

In this tutorial I am going to describe the technique I use to connect with “Apple’s layer” from cocos2d in an easy, modular, reusable way. You will find the project source code used on this tutorial at the end of this post.

Cocos2d Mug

Continue reading

Using sprite sheets in Cocos2d and Tiled (part 2)

Today’s post is the second part of last week post about using sprite sheets with cocos2d and Tiled. In the previous post we saw what is a sprite sheet, how to to create it from a collection of individual sprites using Texture Packer and how to code it using cocos2d for iPhone. Today I’m going to explain how I used sprite sheets as source libraries in Tiled to create and edit New Sokoban puzzles. In this previous post I partially covered this topic. However, today I’m going to enter in more detail into some technical issues.

As we saw in the first part of this article, sprite sheets are mainly used to drastically improve our games performance in terms of both memory and CPU usage. We basically need to group our original individual sprites and then have some way to refer to them in our game code.

Vegeta Sprite Sheet

Vegeta Sprite Sheet

Continue reading