iOS app

During a course in iOS application development at Linköping University I decided to develop an To-Do/productivity app.

The app is centered around dates, and for each date the user can add activities that she or he wants to work on. Then for each Activity, the user can add several TimeIntervals (e.g. 20 minutes) that she wants to work on the activity.

Next, the user can work on activities by selecting them and thereafter one of the time intervals. A timer shows the progress and a sound goes off when the interval is done. The images below summarize the process. Core Data is used for the model objects and to store the data persistently, together with iCloud ubiquity containers (so that it can be accessed from any of the user’s devices).

A video showing the app is available at: ParallelProgress app (iOS).

Adding activities. Adding a new activity using the plus button. The middle image represents the form before data has been entered. Purple circles indicate where the user presses.

Working on activities. Working on an activity. First an activity is selected, thereafter a time interval. A timer is then started with the play button.

Completing activities. Completing an activity. The timer finishes with a sound. The user goes back and marks the activity as done.

tvOS app

Later, as my degree project, I decided to extend the app to the new tvOS platform. This was to investigate the area of app portability between smart device platforms and to learn more about how user interfaces and interaction models differ.

For tvOS, the remote control and focus interaction model meant that the user interface needed to be reinvented, with a more linear approach to navigation. There were also som challenges with the limited storage available to developers, so that all the data needs to be fetched remotely.

The image below shows how UICollectionView is leveraged to give an overview of content on the large TV screen (where UITableView was used on iOS).

Date picker. UICollectionView is used to get an quick overview of content.

There were also components missing on the tvOS platform (compared to iOS) such as support for using Core Data with iCloud, as well as a ready-made date picker. The image below shows the developed tvOS date picker.

Date picker. Date picker. UISegmentedControls are used to select the date components.

For a more extensive look at the developed user interface, a video with app interaction is available at: ParallelProgress app (tvOS).

[Later there will also be a link to the written report for the project.]