Wednesday, June 22, 2011

For Tablets (1.9.8)

In the past few weeks there are many small updates that increased the version number from 1.9.2, one-by-one, until today, 1.9.8.

Historically I intended the Bible app to be compatible with Android 1.5 and up, so no one is left behind. However, according to this chart, Android 1.5 users are only 1.9%, and most of them are old phone users, which they most likely have downloaded this or some other Bible apps, and by not supporting 1.5 anymore, won't affect them so much.

Starting 1.9.8, only Android 1.6 and up are supported. Since 1.9.7 I have also changed the target SDK version to 3.1 (Android Honeycomb), but some people gave feedback to my email saying that the menus are not accessible. It happened that when I request no title bar, Android 3.* will also hide the action bar where the menus are all located by default. Hence, the app will now detect the Android version and not hide the title bar on tablets.

A screenshot from the emulator (I do not own an Android tablet):


The menu items look like toolbar buttons on the top of the screen. Other menu items such as Suggest, Help, and About are accessible from the overflow menu on the top-right corner.

Monday, June 13, 2011

PDB file reader! (1.9.2 -- 2.0 beta)

After months of work, finally a new version is released! Instead of supporting only a handful list of translations/versions, now you can add in .pdb (PalmBible+) files! The core reader is made by Yohanes Nugroho, who made SymbianBible and Bible plus for Blackberry.

A screen to manage Bible versions
However, once you added a PDB file to the app, you don't straight away see the Bible text. The app will convert the PDB file into a format easily understood by the app (.yes format). You can choose the encoding of the PDB file. If you open an English or some European/ Russian languages, probably UTF-8 or ISO-8859-1 are the correct encoding. You will see a preview of the text decoded with your selected encoding.

Select the encoding from the drop-down and you will see a preview
After some time (please be patient while the PDB file is read and converted!) it will appear on the list. If you see in the list there are checkboxes. Those checkboxes indicate whether the version is shown on the version list, accessible from the main menu -> Versions.

Instant version selection after you select versions that appear on the list

I hope this will be useful to those who have a personal library of .pdb files, as well as those who are new to .pdb files.

Some technical information, may be of interest to you :)

  • Apocrypha/ Deuterocanonical books are now supported. This only happens if you open a .pdb file that contain those books. Now the list of books in a version is flexible. If you create a bookmark on a book that is only contained in version A but not version B, when you see the list of bookmarks while opening version B, the book names will be shown as [?] or [number] and the text will be shown as [?].
  • Greek/ Hebrew text is partially supported. AFAIK, right-to-left text are not yet supported in Android, and some Greek characters are missing. By the way, Greek/ Hebrew .pdb files are identified by the filename. If the filename starts with "q", it's Hebrew, if "z" it's Greek. 
  • When you open a PDB file, it is converted to .yes file, stored in /sdcard/bible/yes/ with prefix "pdb-", such as "pdb-128de39a-1.yes". You don't actually need the .pdb files anymore. 
  • Searching a version from PDB files is a bit slower than normal. The reason is, searching uses case-insensitive matching, and in order to support non-ascii characters, Java's toLowerCase is called, which is slower than manual lower-casing of ascii text.
  • Certain book numbers from the PDB files are recognized and translated to the app's native numbering. The app's native numbering starts from the Old Testament, then New Testament, then the additional books according to PalmBible+ documentation. Books with book numbers not in the known list are currently discarded.
This will be released first as the Indonesian version, and some days later as the English version. The version should be 2, but I want to pre-release as 1.9.2, because I afraid this app is not as stable as it should be due to so many internal changes!

Thanks for 50k+ downloads (Indonesian version) and 165k+ downloads (English version)! I hope this app is useful for Bible readers in the world!