Thursday, March 21, 2013

Inter country marriage :) - android APPs on windows mobile



Every year smart phone market is seeing huge number of Android phones. What do you think made Android that popular?

  • Is its UI? 
  • Is its fastness? 
  • Is its robustness? 
  • Is its stability?
  • Is its APPs community?

I am sure everyone many not agree on a single answer for the above question. But based on my little knowledge of Android, I feel that Android's app community is the main reason for making Android popular.
Android uses java native APIs which calls the open max APIs to do the job. Where as windows phone uses direct show APIs to get the job done. In short there is a fight between android and windows. What do  you think will resolve this fight? Based on bollywood movie knowledge, I think it's better to get these two married. :P i.e. in other words get the android apps run on windows phone and get the windows apps run on android apps. I am sure that Bill Gates and Larry page will be against this idea. But this help mango people (AAM ADMI) to use the APPs seamlessly.

After telling the theme of our new bollywood movie, lets jump to what should be made to get our hero and heroine marry instead of our two main villans.
So lets get into some serious stuff.
What are the existing solutions for the present issue? A little googling about our problem shows that you can find that *Blue Stack* is one solution. With the help of blue stack we should be able to run android apps on windows. But this has serious limitation when running on tablets. I think this is bound to happen whenever a app is installed on any operating system because no app developer can test on all the existing platforms.

So what do you think should we do to solve our problem?
  1. Come up with a frame work which will help openmax calls routed to Direct show APIs and vice versa. But with this we will be able to port all Android apps run on Windows and Windows apps run on Android. But what if we have N number of OSes in the future.
  2. Install and boot multiple OSes on your phone. So that if you want to run a android app reboot your phone with Android OS and if you want to run a windows app reboot your phone with Windows OS. But lets wait!!! do you think that if you need to play a game or run a app, do you really want to reboot your phone? Atleast a lazy guy like me surely won't like this idea...
  3. While compiling the app, the app developer should be able to pick the windows libraries or android libraries and compile his code. With this a app developer will have the easness to get his app ready for windows and on android at the same time. But do you think a app developer will try to compile his code with both the OSes libraries? I hope it will be good if they can. But fingers crossed for this option.
  4. Have a APP operating system abstraction layer (APP OSAL) and make all the apps to use this APP OSAL. With this the app developer need not bother about the OS for which he is writing a app. He can simply call the APP OSAL in his applicaiton/game. With this any application can run on any OS. A IOS app can also run on a windows phone. A windows app can also run on a Tizen target. 
Again being a democratic country I think every one will have there own answers for the above questions. But I think the option 4 will help us generalize every app to run on every OS.

4 comments:

  1. A very interesting read (for the bollywood fans), an important issue of running different apps across platforms highlighted and some options have been provided in a easy to understand manner. Probably some other important options like HTML5, usage of Qt can be considered to come to a conclusion

    ReplyDelete
    Replies
    1. sure Sandeep. As a starter of app developer, I am not much familiar with HTML5 and Qt. But will surely include it in my blog after going through some more details of HTML5...

      Delete
  2. Great idea and very well related with Bollywood and real life power struggle in the smart ph world.

    I would also like to think that the cheaper availability of android phones and easy design of the android SDKs also makes it extremely easy for app community to start building android apps. This also goes back to the saying that if you make it easy for your consumers, you are likely to be more successful.

    ReplyDelete