Your SlideShare is downloading. ×
0
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Porting Android apps to the Series 40 platform
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Porting Android apps to the Series 40 platform

3,166

Published on

This webinar presentation gives you an overview of how to port various types of Android applications to the Series 40 platform. Join Michael Samarin of Futurice as he walks you through the basic …

This webinar presentation gives you an overview of how to port various types of Android applications to the Series 40 platform. Join Michael Samarin of Futurice as he walks you through the basic porting tasks involved and shows you how to map Android APIs to corresponding Series 40 APIs. In live coding demonstrations, Michael will use simple hands-on examples to illustrate a step-by-step porting process. This presentation will pay special attention to UI portability and creating a consistent user experience on Series 40 phones.

Published in: Technology
3 Comments
1 Like
Statistics
Notes
  • Recording of the 13 December session is available here: http://forumnokia.adobeconnect.com/p95p3fx544f/
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Because of audio problems during the presentation, we will not be publishing a recording of the 4 December session. We will publish a recording of the 13 December session later this week. Sorry for the inconvenience. If you registered for the 4 December session and could not attend, don't worry about your entry for the prize drawing. If you watch the recording of the 13 December session and reply to the survey, you're still eligible.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Hello, Michael.



    My comments are intended to improve the useful of your presentation to us as developers. Please take these comments in that spirit.



    Slide 8: Would you mind expanding upon the idea of 'post-download and caching in RMS' as mentioned in slide 8, please?

    This concept might even deserve it's own slide with visuals of round trips to Nokia server or elsewhere.



    Slide 19: text in boxes and legend need to be larger to be legible. I like the idea of Co-development.



    Slide 21 text should be darker (more contrast) and sharper to be more legible. This problem could be alleviated by giving us a live link to the URL where this web page resides. Live link in the chat window would be acceptable. However, a live link in the slide deck would be better when we are searching for and studying the material introduced by you



    Slides 23 and 24 have identical problem behavior: The LIve link URL shown is not the place to which we are sent by clicking on it. It drops us at:

    http://www.developer.nokia.com/Resources/Library/Porting_to_Series_40/

    which is the same as the very first URL link in this slide deck.

    Didn't we want to get all the way to the example?

    .../porting-cases/porting-case-frozen-bubble.html

    and

    .../porting-cases/porting-case-rlinks.html



    Slide 25: I like your Futurice home page, although I expected it to look more like the slide. the homepage Does have the Green Wave, but the blue pig and red cannon are should be more color coordinated to blend with the rest of the page.

    I really like that you point out that you deliver what the client Really needs, rather than only what they Think they want. And I really like that it is right on the first page the potential client sees when they visit your website.



    You and your company are world-class, Michael.



    Cordially Yours,

    Ron W Hardy
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
3,166
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
76
Comments
3
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Series 40 Developer TrainingPorting from Androidto Series 40Michael Samarin, Ph.DDirector,Developer TrainingFuturice@MichaelSamarin
  • 2. › This Webinar is compressed summary of the following resources: › Porting: Resources at › http://www.developer.nokia.com/Develop/PortingNokia Developer › Guide for Android Developers: › http://www.developer.nokia.com/Resources/Library/ Porting_to_Series_40/#!porting-from-android-to- series-40.html
  • 3. General Considerations
  • 4. Developer Tools Android Series 40Officially supported IDEs Eclipse Eclipse and NetBeans IDEEmulator Multiple profiles One profile per SDK installationEmulator debugging Yes YesOn-device debugging Yes Yes, with On-Device DebuggerRemote Device Access No Yes, through Nokia RDA
  • 5. RDA:Remote Device Access http://www.developer.nokia.com/Devices/Re mote_device_access/
  • 6. Ranges and Differences Feature Android Phone Series 40 Touch Phone CPU 600+ MHz 200-1000 MHz Display tech Capacitive Resistive or Capacitive Touch interaction Multi-point touch Single-touch and Multi-point touch Display resolution 240x320 upwards 240x320, 240x400 Sensors GPS, Proximity, Acceleration GPS, Acceleration Multitasking Yes No Background processing Yes No Low-level API access Yes Limited UI Definition Declarative or programmatical Programmatical Ready-to-use UI Android UI Standard LCDUI, LWUIT components Battery life Fair Excellent Development platforms Windows, Mac, Linux Windows IDEs Eclipse Eclipse, Netbeans Application size limitations 50MB + 4GB 2MB + Persistent Storage
  • 7. Nokia Asha 311 Nokia Asha 305/306 Nokia Asha 308/309 Nokia Asha 303 Nokia Asha 302240 x 400 240 x 400 240 x 400 240 x 320 320 x 240Capacitive Touch Resistive Touch Capacitive Touch QWERTY andScreen, Multipoint- Screen, Multipoint- Screen, Multipoint- Capacitive Touch QWERTYtouch (5 points) touch (2 points) touch ScreenROM/RAM ROM/RAM ROM/RAM ROM/RAM ROM/RAM256MB/128MB, 32 64MB/32MB, 32 GB 64MB/32MB, 32 GB 256MB/128MB, 32 GB 256MB/128MB, 32 GBGB Micro SD Micro SD Micro SD Micro SD Micro SD
  • 8. Memory Considerations» On Series 40 Memory Limitations: › Application JAR file size can’t exceed 2 MB. › Java Heap Size is 2 or 4 MB. › Use Nokia Device Matrix for checking: http://www.developer.nokia.com/Devices/Device_specifications/» Brings challenging decisions, especially to visually rich games, with many bundled graphical resources.» Option: post-download of needed resources and caching in RMS.
  • 9. Apps particularly favorable for porting include» Content-intensive applications, showing lots of textual content and making use of vertical scrolling.» Single-purpose tools utilizing network connectivity: Content aggregators, RSS/News readers; Location-aware applications featuring maps.» Various business applications.» Casual games (puzzle, 2D arcade), childrens apps (drawing, coloring, touch interaction, soundboards).
  • 10. Application Portability and considerationscategoryGames: Arcade, Generally portable. Certain touch interactions might need to be redesigned. Use of images forAction, Racing, graphics might need to be optimized. Many of these games can also be ported for non-touchSports devices: also lower-resolution ones, by downscaling the graphics.Games: Brain, Generally portable. As these games are not usually graphically intensive, porting would be mostlyPuzzle, Cards, converting the game logic and adjusting graphics for new resolutions. Depending on the type ofCasual the game, a wide range of Series 40 devices can be targeted, including non-touch ones.Books, Comics, Generally portable. Biggest challenge is likely scaling the graphical content. While a wide range ofEducation, devices can be targeted, a particularly sweet spot for these applications would be the full touchNews/Magazines devices with lots of screen estate.Business, Generally portable, except for productivity tools related to platform personalisation. TheseFinance, applications can be made to work on a wide variety of screen sizes and input types. Porting isProductivity mostly adjusting views and converting the application logic. Also adjusting to non-touch devices is usually possible.Communication, Generally not portable: VoIP, tethering, ringtone and caller ID applications not feasible in Series 40.Social Messenger applications are limited to foreground processing.
  • 11. Application category Portability and considerationsEntertainment, Generally portable. Applications can be made to work on a number of screen sizes and non-Health, Lifestyle, touch devices. Most porting work is done with adjusting the UI and converting application logic.Medical, Shopping, Background processing is not available to e.g. record GPS location on the background.SportsMedia & Video Generally not portable. Simple video playback possible, but support varies across devices. See Video Formats in the Developer Wiki.Music & Audio Generally portable, e.g. streaming music from online, with the exception of lack of background processing. Online streaming services generally work well where good network connetions are available, regardless of the input paradigm used. Porting work is required for application UI and audio streaming code.Photography Portable, with reservations: camera accessible via JSR-234, no access to native code might make filters difficult to implement. This category is best viewed on the larger screen sizes, i.e. touch and type and full touch devices.Tools, Widgets, Live Generally not portable: replacements for platform functionalities, virus scanners etc. notWallpapers, relevant in Series 40.Personalisation,Libraries
  • 12. UI Considerations
  • 13. Overall layouts & interaction in Series 40
  • 14. Navigation Logic:Android tab navigation to Series 40
  • 15. Navigation Logic: Android Dashboard navigation to Series 40
  • 16. Navigation Logic: Androidscrolling tabs navigation to Series 40
  • 17. Back Navigation
  • 18. Code Considerations
  • 19. Porting › Consider Co-Development, instead of classic “porting” › Make clear separation between business logic and UI › IT is possible to make libs reusable between platforms › JARs from Series 40 with platform independent Java code are reusable directly on Android
  • 20. › Android “Activity” vs. MidletApplication Life › Android Background Cycle Execution vs. Midlet instant kill
  • 21. Code samples › http://projects.developer.nokia.c om/picasa_viewer
  • 22. Code samples › http://www.developer.nokia.com/Re sources/Library/Porting_to_Series_4 0/#!porting-cases/porting-case- frozen-bubble.html
  • 23. Code samples › http://www.developer.nokia.com/Re sources/Library/Porting_to_Series_4 0/#!porting-cases/porting-case- rlinks.html
  • 24. Thank you! @MichaelSamarinhttp://www.futurice.com

×