Wednesday, April 29, 2009

Developing for Symbian, Android and iPhone

The main points of this comparison will be considering the developing phase point of view and not the architecture and the details of the SDK OS itself

First of all, i want to state my admire to the Symbian OS as embedded OS without considering anything about tools used in the development like Carbide IDE , emulator and etc

First point in comparison is the installation phase , that might seems nothing in the point of view of a lot of people but if you have to choose between a number of alternative, it always make sense to choose the easiest one as long as this choice will not cause trouble in the future.

When considering the installation guide of Symbian developing tools, you will have to install of 3 programs in certain order with almost defined paths and until now “Y:2009” you have to put your workspace within certain places in the your installation directory or you will not be able to compile and run your projects which is not the case in any other SDK it have ever used.

In Android SDK, thanks to Google documentation, the installation phase turns out to be couple of easy and clearly explained steps that you maximum takes from you 10 minutes without including the downloading part :D

Despite that iPhone is developed on MAC OS which is Linux based OS "famous for being command line OS", the installation phase doesn't exceed clicking few "i agree", "continue" buttons and done, you are ready to develop

The next point in comparison is the documentation of the SDK itself
When considering Symbian API, the documentation sucks and i am sorry to say that but i damages more than it benefits, in that link for example you will see the methods and all variables are listed in HTML single line at the top of the page so it is very hard to know which methods do which job, so you have to scroll all over the page “for infinity” to get general idea about the use of the class, methods and what information does it provides

On the other hand in Android and iPhone , the documentation is magnificent and very helpful and that is not because it provide more information than that provided by Symbain but because the way of presenting that information.

The last point in my comparison is the memory handling and leaks finding process

Android by default have a garbage collection so it is very easy for any beginner to get started with Android without having to consider the memory handling while developing.

iPhone SDK provides a tool named Instrument that provide developers with hints about lines in the code that generate memory leaks so developer can check these lines for any error easily. it is clear that this tool helps developer focus on code model and don't waste his time searching for memory leaks holes. for more details

Finally, coming to carbide which provides nothing that helps developers in that issue, The mobile emulator makes a sign "General error:-1" when a leakage occurs but it don't say where that error has occurred. A tool named Hooklogger is supposed to provide carbide developers by a way to indicate where the memory allocation is done and where the freeing is done so developers can identify where leakage has occurred but in my opinion Hooklogger is nothing compared to the Instrument tools provided by iPhone SDK and it isn't that much help.

Flash Lite application Signing

How to install an SWF file developed on adobe flash on your Nokia device phone ?

This tutorial will assume that you have a valid SWF file developed on adobe flash.
To be able to install your SWF file on Nokia device, you will have two phases to finish

First phase: is converting the SWF file into an unsigned sis file. To do that Nokia provide online packaging service that converts SWF file to unsigned sis file, in that tool you submit your SWF files choose the main SWF file which is the starting point of your program

Second phase: is to convert that unsigned sis file to signed one with capabilities that will allow it to function well, and i have written more about that process here in my blog

Saturday, April 11, 2009

Kaspersky get Around Tips

  • Delete the black list file on your machine

  • This way might be useful when you get tired from googling for kaspersky keys or when you just want to enable kaspersky to scan for virus and you don't have time to start searching for keys.
    The Black list is a file on your machine that contains list of black listed keys. This file typically is placed in C:\Documents and settings\Users.AllWindows\Application Data\Kaspersky Lab\AVP8\Bases\black.lst in windows XP or in C:\ProgramData\Kaspersky Lab\AVP8\Bases\black.lst in Windows Vista and windows 7.
    If you tried to delete that file in normal way "shift+delete", you will get a message saying that you can't delete that file because it is currently in use "protected" so to get around that you will have to boot different OS and delete it from there.

    One of the easiest ways to boot another OS, is to try one of Linux live CD and when OS is loaded you can delete. after you boot windows again kasper will say that black lst database is corrupted and so you can get it any old key file that you have used before "already blacklisted" and kasper will be enabled again
    N.B: you should think twice before you updated kasper because it will normally restore that black list again from server and the key will be black listed again