📜 ⬆️ ⬇️

Android vs Maemo: a comparison of two platforms


Technically, both platforms run on the Linux kernel. However, Maemo is a real Linux distribution based on Debian, while Android is just a kernel with some add-ons and programs (the Davlik virtual machine and the SQLite database). All applications written for Android are launched using the Davlik virtual machine (highly optimized and modified JVM). I tried to analyze the advantages of both platforms from the point of view of the developer, as well as their current development strategy. If you do not have time to read the entire text in detail, then you can familiarize yourself with brief conclusions at the end of each sub-topic.


Android vs Maemo from the point of view of a software developer



Development.


')
Maemo SDK exists only for Linux platforms. For me, this is not a problem (since Linux is my choice as a desktop OS), but this can be a significant problem for many developers. The SDK just works fine on Debian or on distributions based on it (for example, Ubuntu). Maemo is also based on Debian, so the Scratchbox cross-compiling software package is easily used by the SDK for compiling on both platforms (x86 or ARM).
Maemo applications are developed for GTK + using the Hildon framework. Of course, C is the main language for application development. Of course, other languages ​​(such as C ++, Java, C #, etc.) can also be used in the same way due to the fact that GTK has different bindings to them. However, most applications are developed on pure C, mainly due to performance limitations that are typical for mobile devices. At the moment, GTK + itself is a bit archaic, and despite the fact that Hildon is focused on working with touch devices, there is still a lot of work to be done through GTK + and the good old C. Thus, the design convenience is much lower than iPhone SDK, Android SDK , or Palm WebOS Mojo SDK. There is a chance that with the release of Maemo 6 (codename “Harmattan”) this situation will change, as the Qt libraries will be included in the system and it will become the official framework for developing applications in Maemo. But it will only happen.
closer to 2011, but for now the ease of development for Maemo is inferior to the same for Android.
UPDATE : As noted in the comments (not here, but on the author’s blog, approx. Lane ), Qt should already be used to develop for Maemo. The current trend is the development of cross-platform applications that will work on both Maemo and Symbian OS (just like on Windows / Mac OS X / Linux, although it may not be practical to use a similar user interface for desktops and mobile devices). The sooner Qt becomes the official development framework for Maemo, the better.

The Android SDK is available for Windows, Linux, and Mac OS X. Its functions include the simple creation of interfaces using XML (DSL), easy internationalization of strings, storage of applications within the SQLite database, management of background processes, etc. In other words, this is what a modern application development SDK should look like. The only drawback is that all applications run under Java, and for some Java developers it is a synonym for sluggishness (although it is not so slow on Android, since Davlik is optimized to run specifically under this OS). It is for such developers that it is possible to use the native Android SDK, but its capabilities are very limited, especially access to hardware.

Porting existing applications



In this area, Maemo has a huge advantage over Android, since it is completely based on Debian. With the help of the Scratchbox cross-compilation package, many open source applications can be compiled for ARM architecture. Many console utilities can be ported simply by recompiling, for applications with a graphical interface, you usually need to rewrite the UI, but in any case it is much easier to port an open source application than to write from scratch. Some popular programs are already ported to Maem: MPlayer, Pidgin, Gnumeric, Abiword.
Porting an x86 application to Android is just as difficult as to any other platform: the entire interface and logic must be rewritten from scratch.

Conclusion : development is easier for Android, while on Maemo it is easier to port an existing application.

Development strategy.



Both platforms are aimed at the market of smartphones, mobile Internet devices and netbooks. Maemo is supported only by Nokia, while Android is supported by the OHA (Open Handset Alliance), whose members include such players as: Google, Samsung, LG, Motorola, HTC, Acer and others. Nokia may be the largest manufacturer of phones and smartphones on the planet (in the original source it is written that way, but according to other data, Nokia is already the largest manufacturer of smartphones and phones, lane ), but it is unable to resist them. Thus, it is obvious that in the near future the number of devices running on Android will far exceed the number of devices on Maemo. By the end of 2009, as many as 18 Android devices appeared, and Nokia released only 4 Maemo devices (Nokia N770, N800, N810, N900). Even if the N900, new Internet tablets and netbooks will sell better than Android devices, the total number of Androids will grow faster than Maemo. The wider the platform is, the more interest it provides for developers. Nokia's main competitors, Samsung and LG, will use Android as a competitive advantage and will focus all their efforts on this platform. Motorolla is trying to save itself with the help of MOTOCLIQ (aggressive pricing) and MOTOBLUR (Android software), and I must say, they have a chance of success! In this situation, Maemo becomes the main competitive advantage of Nokia, so the company must throw all its strength on it or give way to another leader. Tough competition provides a colorful and bright future for both platforms. Another question is which of them will finally win, and this is the most interesting. Android is a potential winner: it will have a large consumer base in the future, more developers write their applications for Android, it is supported by the most powerful corporations, among which Google is present. However, there is a power that can keep Maemo afloat, and in the long run it is possible to make it a leader: the open-source community. You can argue: "But after all, both platforms are open source!". It does not matter. It is important that Maemo can use the efforts of the entire open-source community to complete something that can take many person-years. Android can use only a small number of open-source projects, all applications must be rewritten from scratch. Contrary to this, any open-source project running on Linux can theoretically be run on Maemo (since it is relatively easy to port). Maemo needs to take advantage of this in order not to lose Android. Thus, the Maemo kernel developers should make this advantage even more by facilitating the porting process.
open-source applications on this platform.

Another advantage of Maemo is that it is more Android'a suitable for relatively large devices - Internet tablets and netbooks. It was designed for Internet tablets and has already proven its effectiveness in this area. Being based on Debian, Maemo will probably be suitable for touchscreen netbooks. Android is good on smartphones, but we only have to see if its functionality will be enough for netbooks. There is a chance that Android will occupy the smartphone market, while Maemo will prevail in the market of netbooks and Internet tablets.

Conclusion : at the moment, Android has a better position: in the near future, this platform will be more common than Maemo, there will also be more developers for it (development is more convenient + more audience). Nevertheless, Maemo can benefit from the open-source community, using its tremendous work (for good purposes, approx. Lane ). Another advantage of Maemo is that it is more suitable for Internet tablets and netbooks.


PS : It does not matter, Android or Maemo, in any case, Linux will win :)

PPS : You can prefer Android, Maemo or any other mobile OS, the ideal situation for the smartphone market is the competition between several leading platforms, and not the dominance of any one. Both platforms are good operating systems, so that they both dominate the market in equilibrium, without killing each other, because only then will more and more new innovations appear.

Update : For additional ideas and opinions on the topic, please read the comments on Reddit and Maemo Talk . Summarizing the opinions and summing up, I listed below some of the advantages of each platform:

update: As the sommer habraiser noted, it is possible that the arguments you are about to read are not correct. They are the subjective opinion of the author of the original text.
Advantages of Android:

Advantages of Maemo:

Source: https://habr.com/ru/post/81989/


All Articles