(Difference between revisions)

Archived:Porting from Android to Nokia Platforms

From Nokia Developer Wiki
Jump to: navigation, search
ilkkal (Talk | contribs)
m (Ilkkal - add to qt quick category)
hamishwillee (Talk | contribs)
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Category:Porting]][[Category:Qt]][[Category:Qt Quick]]
{{Archived|timestamp=20120223034955|user=[[User:Hamishwillee|<br />----]]|}}[[Category:Porting]][[Category:Qt]][[Category:Qt Quick]][[Category:MeeGo Harmattan]][[Category:Symbian]]
{{Abstract|This article has now been incorporated to the [http://www.developer.nokia.com/Resources/Library/Porting_to_Qt/android-to-qt.html Porting to Qt Library]}}
{{ArticleMetaData <!-- v1.2 -->
|sourcecode= <!-- Link to example source code e.g. [[Media:The Code Example ZIP.zip]] -->
'''Other porting-related articles'''
|installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) -->
*[[Porting Mobile Applications to Qt]]
|devices= <!-- Devices tested against - e.g. ''devices=Nokia 6131 NFC, Nokia C7-00'') -->
*[[Porting from iPhone to Nokia Platforms]]
|sdk= <!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Qt SDK 1.1.4]) -->
*[[Porting from Android to Nokia Platforms]]
|platform= <!-- Compatible platforms - e.g. Symbian^1 and later, Qt 4.6 and later -->
*[[Fundamental use cases for porting iPhone and Android applications to Qt]]
|devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) -->
*[[Qt Quick examples for porting]]
|dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 -->
*[[Wordpress  developer story]]
|signing= <!-- Signing requirements - empty or one of: Self-Signed, DevCert, Manufacturer -->
*[http://www.developer.nokia.com/Design/ Nokia Developer Design and User Experience Guide] for ideas on how to achieve the best possible user  experience when porting your application for Nokia devices.
|capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. -->
|keywords= <!-- APIs, classes and methods (e.g. QSystemScreenSaver, QList, CBase -->
|language= <!-- Language category code for non-English topics - e.g. Lang-Chinese -->
|translated-by= <!-- [[User:XXXX]] -->
|translated-from-title= <!-- Title only -->
|translated-from-id= <!-- Id of translated revision -->
|review-by= <!-- After re-review: [[User:username]] -->
|review-timestamp= <!-- After re-review: YYYYMMDD -->
|update-by= <!-- After significant update: [[User:username]]-->
|update-timestamp= <!-- After significant update: YYYYMMDD -->
|creationdate= 20100426
|author= [[User:Jros]]
The following article describes recommended ways to port different types of
Android applications to Nokia platforms, and also covers the most typical
special cases.
== Normal Android Java Apps ==
Since Android applications are written in Java, direct code-level reuse is
typically not possible when porting to Qt. Typically the application design and
assets can be reused in a new QML UI, and the code rewritten.
== Java Native Interface ==
A notable special case is where the Java Native Interface (JNI) is used in the
Android application. JNI allows the use of C/C++ shared libraries from Android
Although this is not a recommended way to develop basic Android applications,
it is very useful in some specific cases — for example, with games relying on
existing game engines, which are often written in C/C++.
If the Android application uses these kinds of C/C++ shared libraries,
code-level reuse is also often possible, especially towards the Maemo platform
but also sometimes towards the Symbian platform.
== WebKit ==
Nowadays, in addition to developing Android applications directly in the Java language, several Android applications are also built as web applications using the WebKit approach with tools like [http://www.appcelerator.com/products/titanium-mobile-application-development/ Titanium Mobile] or by utilizing the LibWebCore in manual fashion from the Android application.
For these types of web applications the recommended porting approach is to rewrite the application with Qt Quick, especially if the intention is to develop an impressive UI. For more information on Qt Quick, see [[Porting  Mobile Applications to Qt#Qt Quick and QML Language|the section on Qt Quick in the porting introduction]].
Developers could also consider building a Qt Quick application and basing its functionality on embedded web views; for more information, see [[Fundamental use cases for porting iPhone and Android applications to Qt#Web View|the Fundamental porting use cases document]].
== User interface ==
Although code cannot typically be reused, the graphics and design of the
application can often be reused to good effect. For example, in Qt Quick,
scaling of the existing UI elements is very easy and may not require much
rework from the UI designers.
Generally, however, your application will look best and be most usable if you
take some time to redesign the application layout. An application layout that
looks great on an Android device may not be very usable on a Nokia device,
since the usage paradigm of user interface and available features affecting the
user experience are different.
For more information on UI design for Nokia devices, see
[http://www.developer.nokia.com/Design/ the Nokia Developer Design and User
Experience Guide].
Copyright © 2010 Nokia Corporation. All rights reserved.
Nokia, Nokia Developer, and Maemo are registered trademarks of Nokia
Corporation. Java and all Java-based marks are trademarks or registered
trademarks of Sun Microsystems, Inc. Apple, iPhone, iPod and MacBook are
trademarks or registered trademarks of Apple Inc. Android is a trademark of
Google Inc. Other product and company names mentioned herein may be trademarks
or trade names of their respective owners.

Latest revision as of 07:36, 19 June 2012

Archived.pngArchived: This article is archived because it is not considered relevant for third-party developers creating commercial solutions today. If you think this article is still relevant, let us know by adding the template {{ReviewForRemovalFromArchive|user=~~~~|write your reason here}}.

This article has now been incorporated to the Porting to Qt Library

Article Metadata
Created: User:Jros (26 Apr 2010)
Last edited: hamishwillee (19 Jun 2012)
This page was last modified on 19 June 2012, at 07:36.
174 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.


Thank you!

We appreciate your feedback.