uBooks Reader Update

10 June 2010

Here it is: the long-expected update for the popular free uBooks iPhone reader has been released. The reasons for such a long expectation made up in a whole story…

Functionality

But let’s hold on with the story and let’s check out the screen-shots and their functionality:

uBooks reader in night mode uBooks reader in day mode

I will emphasize some of the application features:

  • soft scrolling
  • page-flipping animation
  • application language
  • configurable tap zones
  • book search function
  • manual screen turn
  • bookshelf
  • bookshelf search function
  • folders
  • percent-based book navigation

uBooks reader text options uBooks reader settings

The thing you can’t see from the screens is that downloads are available using:

  • HTTP server
  • FTP server
  • web browser
  • public storage

An Instructive Story

If you want to skip the story and see the iPhone/iPad/iPod Touch best reading application (as we consider it) go straight to that post.

If you’re are interested in iPhone/iPad application development then continue reading.

And now the story that began on September 25 of 2009, when censors from AppStore gave the green light to the creation of the first free version. But unfortunately, the payware version release was postponed by the censors for an indefinite period. The motivation of the release denial was simple–the usage of the private framework.

To raise the user-friendliness, the risky decision of Webkit framework was made in order to use hidden abilities. That’s exactly what Cupertino guys didn’t like. It is still a mystery how the freeware version has passed through, as it’s built on the same principles and differs only in containing banners.

We had learned an excellent lesson and the new version development started. We wanted a version that would lack all the flaws of the previous one, notably we wanted to get rid of WebKit. The Control to outline the text was named Viewer. And the work in full swing began…

The viewer was to be made in two ways: using OpenGL and our know-how. We formed two teams working in parallel. We decided the team that develops the commercial version faster and with better quality will be the winner. Charged with the spirit of competition we worked for a while and finally team with our know-how was the first to finish, but it wasn’t over. We were to unite two versions and fix all the previous version defects, to add some useful stuff that would make book reading more comfortable.

One of the major drawbacks that many people complained about was the incorrect TXT files encoding recognition. To solve this problem, we developed an algorithm that analyses the frequency of the usage of the symbol and suggests the encoding used in the files. And certainly, we didn’t forget about the user convenience–after converting the book into our own format we left the possibility for its re-encoding.

We have developed our own format of book saving for rapid file navigation. This format represents XML with numbered paragraphs and symbols amount for more accurate positioning. For the rapid XML navigation, we have refused from NSXMLParser offered by Apple and to use Xpath technology instead, which provides faster access to the required paragraph and its drawing.

The hardest task was to optimize the drawing process of the text displayed in small font during auto-scroll. Jerky movements at reading books were tiresome for the eyes. The reason for it was the inability of the processor to perform drawing and data processing in one stream fast. Having divided these operations into several streams and synchronized them, we have significantly unloaded the processor. It lets users perform additional background actions, for instance, to listen to music while reading.

By the way, we supplied all members of the team with iPhones and they tested the application not only while working, but in everyday life too at home, at transport, and at work. This way we were interested in the most rapid application development with better quality, embedding new ideas on usability. One of the usability features is a built-in web browser, which lets you surf the Internet sitting in the café and download a new book without using a laptop or PC.

The development of uBook is in progress. After its release in AppStore, we’re planning to convert it to iPad, to expand the app’s functionality, to raise its credibility and speed.