Requirements: The customer requested a mobile application for Android tablets that will entertain children with gaming experience. The app should cover tablets holding 7 and 10 inches displays. It was decided to assign one developer for the project.
Challenge: The first challenge was to implement postcard picture creation, that consists of overlapping mask picture like pirate or clown image with a transparent face, and child's photo taken from gallery or photo shot. This photo underlays mask, allowing user rotating/zooming underneath. The other challenge was to program a magnetic effect for puzzle game and to fulfill the correct eraser in painting game, which handles the changes of custom background and user-painted canvas.
Solution: The first problem was resolved by combined approach using bitmap drawing cache, extra bitmap canvas for underneath layer and standard Matrix class for picture transformations. All transformations performed in new thread that is different from main UI thread. The magnetic effect was created by storing destination point in the tag of puzzle peace view, so each puzzle knows its destination. Paint game eraser is created by a specific paint mode called Porter DuffXfer mode with the CLEAR mode, which was applied only to user-painted canvas.
Results: The outcome of the development is a tablet application (supports Android 4.0 and higher). The main target is to make fun of user gaming interaction, which requires some creativeness from user.
The app has the following functionality:
- Creating a postcard combining different “fun” mask, as pirate, clown and princess with the real picture including accurate adjustment;
- Listen to app build-in music;
- Browsing information related to Stiftung Theodora;
- Puzzle game of build-in pictures or any external pic or photo shot with time scores;
- Memory game of 24 cards where time and number of cards picked is counted for scores;
- Painting game where you can set custom background from preset colors or from own photos and pictures;
- Paintings and postcards can be shared online.