Custom BlackBerry ButtonField

UI controls in the BlackBerry SDK don’t give you a lot of customization options specially in versions prior to 5. To do something as simple as changing the background color or focus color you will have to subclass that UI control and draw everything yourself.

To make our lives easier, I intend to create a set of custom controls that are easily customizable just by setting a set of properties, the first of which is a custom ButtonField which lets you easily set background and focus image/color, draw rounded edges, change size, and change font.

I’ve added the source code along with a usage example to a GitHub repo and I will be adding more controls later on.

Grab the code here: https://github.com/HeshamMegid/BlackBerry-Custom-Controls

Update: I’ve added the ability to initialize the button with two URLs for background and focus images, which will be automatically downloaded.

Apps to change your contacts numbers to the new format (regularly updated)

Starting 6th of October all mobile phone numbers will be changed to the new format (11 digits instead of 10). For more details check http://www.ntra.gov.eg/presentations/NumbringPlan14112010_Ar.pdf

Suddenly everyone is developing apps to convert numbers on your contacts list to this new format. I will be keeping track of all apps across all platforms and regularly updating this post.

iPhone:

  1. Arkami by BadrIT ($0.99): http://itunes.apple.com/us/app/arkami/id415675418?mt=8&ls=1
  2. Engezly by Vodafone (free): http://itunes.apple.com/eg/app/engezly/id437564823?mt=8
  3. Contacts Fixer by Great Tides ($1.99): http://itunes.apple.com/eg/app/id467937687?mt=8
  4. Felsaree3 by Mobinil (free): http://itunes.apple.com/us/app/felsaree3/id466896405?mt=8&ign-mpt=uo%3D2

Android:

  1. Tazbeet (free): https://market.android.com/details?id=net.tazbeet.mobile.pbu
  2. Egypt Contact Updater by AspxWizard (free): https://market.android.com/details?id=com.egypt.updatephonebook
  3. Egypt Phonebook Updater by Dynamix (free): https://market.android.com/details?id=com.dynamix.egyptupdater
  4. Engezly by Vodafone (free): https://market.android.com/details?id=com.emeint.android.myservices&pli=1
  5. Zabat Nemarak by Blue Flare (free): http://blueflare.net/zabatnemarak/apps/Zabat_Nemarak.apk
  6. Felsaree3 by Mobinil (free): https://market.android.com/details?id=com.emeint.android.myservices.mobinil
  7. Ozbotha by AWStreams (free): https://market.android.com/details?id=com.ozbotha
BlackBerry:
  1. NTRA is Shortsighted by @kariemali (free): http://code.google.com/p/ntra-is-shortsighted/
  2. Zabat Nemarak by Blue Flare (free): Coming soon.
  3. Felsaree3 by Mobinil (free): To download send an empty SMS to 1717.
  4. Ozbotha by AWStreams (free): http://blackberry.ozbotha.com/
Nokia:
  1. AddPlus by GlobeSoft (42.99 EGP, WTH?!!): http://store.ovi.com/content/43950
  2. Zabat Nemarak by Blue Flare (free): Coming soon.
  3. Felsaree3 by Mobinil (free): http://www.4shared-china.com/file/uBzCPlcU/mobinil_felsaree3_14_01.html
  4. Ozbotha by AWStreams (free): http://www.midp.ozbotha.com

My thoughts about Otlob’s BlackBerry app

I’m a big fan of Otlob.com. I think it’s a great service and I use it all the time, but I have always thought that Otlob’s service would be much better if we could place orders through apps on our smart phones. Recently Link Development has launched 3 apps for Otlob for iPhone, BlackBerry and Nokia touch phones. I used the BlackBerry version for a little while and it was such a disappointment, there are so many issues in the application that makes it almost unusable,  so I decided to compile a list of everything I don’t like about the app, maybe it would help in improving it later on.

  1. On the first screen you are asked to choose a city, district and food category. The weird thing is that the contents of these menus are only loaded from the internet when you open them, not when the app starts. So when you click on any menu you have to wait for network activity to be done so you could see the contents of the menu.
  2. One more issue with the first screen is that you unlike the website, you can’t choose “All” as a food category. You always have to choose a specific category.
  3. After selecting a restaurant and viewing its menu, there’s no way to view the sizes of the items you are ordering, you only get the same item with different prices.
  4. on every item you order, you can enter a note. I wrote a two line note on my pizza, later on after placing the order I found out that only the first line made it through to the finalized order. So I ended up having the wrong pizza.
  5. After placing the order I choose “Review order” to see the status of my order. The app showed the items I selected but it showed them as if I haven’t ordered them yet, and I had the option to place the order!
  6. BlackBerry applications depends a lot on the BlackBerry menu key. Many options are always stuffed inside that menu. In Otlob’s app you don’t get any options in that menu in most screens.
  7. The BlackBerry menu has a “Close” option by default. Obviously that should close the whole application, but instead it send you to the previous screen, which is the same functionality as the back button. So to fully close the application you have to go back through all the screens.
  8. The last issue is really shocking to me. Any application developer knows that you should never ever do your network activity on the interface thread, because that will freeze your application till the network activity finishes, which could take up to 10 seconds or even more. But Otlob’s BlackBerry app developers decided to all of the app’s network activity in the UI thread, without even informing the user that it’s loading something from the internet so you know that you have to wait.

I came through all of those issues by placing one order. Regular users of the app probably came through many other issues. So please feel free to share them in the comments section.