Presentation on how to chat with PDF using ChatGPT code interpreter
Automated mobile application porting
1. Cross Platform Development & Porting
MobFest February 2009
Aaron Chan
Business Developer
Wednesday, March 18, 2009
2. The causes
What causes fragmentation?
The Fragmentation Problem
Wednesday, March 18, 2009
3. The causes
What causes fragmentation?
Why fragmentation?
Hardware dierences, models markets
Verification of handsets /java
New JSRs and APIs
The speed of the standards process
Manufacturer dierentiation
Handset customization
Handset variation language dierences
Wednesday, March 18, 2009
4. How deal with fragmentation (1)
How to to deal with
Strategies
fragmentation
A) The brute force method
Create reference versions
Create 10-15 primary ports
Create 50-100 secondary ports
Involves code washing, pre-processing
search replace expressions, various
manual adjustment.
Typical for Java applications deployment
Wednesday, March 18, 2009
5. Strategies
Or use transcoding
B) The transcoding method
Create reference versions
Create a port for each OS
For each phone in each group,
carry out transcoding using
device profiles
Normally, the source code is often sent
elsewhere for treatment
Wednesday, March 18, 2009
6. Strategies
Or transform
C) Advanced compiler technology
Make the code:
Transformable
able to carry out complex analysis
able to perform static checks
form an application syntax tree
A compiler back-end for each OS, adapted to optimally
output code for each target platform, in analogy to GCC
technology and its back-end(s)
Which is what we’re
gonna be showing you
here today!
Wednesday, March 18, 2009
7. The solution
MoSync a cross platform
MoSync (Symbian, J2ME, Windows
Mobile and others) tool
that makes it easy to
port, update and create
applications from one
mobile platform to
another.
MoSync removes
bottlenecks in developing
and deploying and allows
dynamic services to be
created simply.
Mobile development has
never been easier and
porting is history!
Wednesday, March 18, 2009
8. One source code direct to
Symbian, Java and Windows
Mobile
Pre-processer directives
Abstraction layer
Device analysis
Time to demo!
Wednesday, March 18, 2009
9. Demo “Simple application”
The Eclipse IDE
Project window
Building the project
Testing in the emulator
Wednesday, March 18, 2009
10. Other examples “advanced
application”
Porting Another World* into MoSync
With permission from with author
Eric Chahi
Source interpreter
SDL stub ported in 4 hours
* The game is known as
Out of this World in the
US and Outer World (
) in Japan
Wednesday, March 18, 2009
11. “Building Ruby”
A Ruby interpreter built on MoSync
Ruby for Symbian, Windows Mobile
(and java)
Open source language
Ported in 1,5 days
Wednesday, March 18, 2009
12. The solution
How to automatically port
to hundreds of phones
Single projects vs. multiple projects
Building for many devices and OSs
Using the Finalizer
generating scripts/criteria
running script
defines, pre- and post-steps
output structure
saved-in project
Wednesday, March 18, 2009
13. Developing for Symbian
devices w/o C++
New technology means new
languages
Dierent front-ends
C/C++
Java
Objective C
Fortran/ADA/Small Talk/Erlang/
new
Scripting languages (python, ruby)
Dierent back-ends
iPhone
Android
Moblin
Flash/ECMA script/weird
new
Wednesday, March 18, 2009
14. Thank you!
Mobile Sorcery AB
Aaron Chan, business developer
aaron.chan@mobilesorcery.com
Download your copy today from
www.mosync.com
Wednesday, March 18, 2009