Wednesday, September 8, 2010

English Version! (1.1)

Now that we have King James Version text, why not translate the app into English and publish it too, with KJV as the default text? Yes, that's interesting!

Although there are many KJV Bible app on Android Market, I believe some people will be more confortable with this app, namely the speed of displaying Bible text which I found is faster than most of the available apps. And also the (hopefully) clean user interface that minimizes distraction when reading the Bible.

So, yeah, doing this is not a small task for me. The following was done in order to release the English version of the app.
  1. Moving all translatable strings from the code to strings.xml (Eclipse feature to mark literal strings as error helps a lot)
  2. Translating the strings.xml into English 
  3. Changing literal string references in resource files to @string/* resource references
  4. Converting KJV text to internal format (not .yes file, since this file is not seekable if stored inside an .apk file)
  5. Putting some logic to differentiate different enabled features between the Indonesian app and English app (e.g. No devotion, help, and versions yet for the English build)
  6. Modifying icon colors
  7. Moving all code base from yuku.alkitab package to yuku.alkitab.base package. This is done such that compiling resources (the R file) into different package does not severely affect import statements on the Java sources.
The result: different application from the same (similar) code base:

English edition of the app!
Actually I didn't get a nice idea how to name the app. If I just named it "KJV Bible", it will be similar to those other app in the market. Maybe I will emphasize the quickness of the app, so I put "Quick" prefix. If you have some suggestion for the naming, please let me know!

And finally, this is the screenshot of the English interface. 

English! No devotions, no version switch, no help yet
By the way, this is called version 1.1 and released before the Indonesian release of 1.1 which will have more features enabled.