SlideShare uma empresa Scribd logo
App Development for
Nokia Asha Devices
with Java ME
                       Marlon Luz - INdT
               Nokia Developer Evangelist
                             @marlonluz
WHAT IS THE
                                      CENTER OF
INdT?                            RESEARCH
                            & DEVELOPMENT
                                        nonprofit
 with focus in development of

new concepts,
products & solutions
               for areas related to


             mobile tecnologies and internet
Training Content
 •   Nokia App Store
 •   Nokia Platforms
 •   Introduction to Java ME Development
 •   High Level UI components
 •   Data storage
 •   Publishing your App
Nokia App Store
Nokia App Store, Series40 & JavaME

  120k+ apps, 15m downloads/day

Brasil: 150m downloads (total), 50m in
 2012, 500k per day, 56% in Series 40,
   73% of purchases are JavaME apps
Nokia Platforms




   Java apps   Phones
               Series 40




                           Silverlight, XNA
Mobile Platforms




http://gs.statcounter.com/#mobile_os-ww-monthly-201201-201212
Mobile Platforms




http://gs.statcounter.com/#mobile_os-af-monthly-201201-201212
Mobile Platforms




http://gs.statcounter.com/#mobile_os-as-monthly-201201-201212
Nokia SDK 2.0 for Java
• Emulates the device
  environment
• Location, contacts, etc.
• Emulates mobile events
  like battery, sms, etc.
• IDE Integration
Development
• IDE Installation
• Overview JavaME
• First Project
JavaME Overview
• Java Micro Edition (ME) is the Java for devices with
  limited resources
• Java ME brings a common platform for devices like:
   •   Mobile phones
   •   Pagers
   •   PDAs
   •   Set-top boxes
• Java ME defines a set of configurations, profiles e
  optional APIs;
• Java ME enables the developers to create
  applications for a large number of devices;
Configurations
• Support a wide variety of products that fit within
  the scope of J2ME;
• Defines a Java platform for a wide variety of
  devices, also defines a JVM (Java Virtual
  Machine) and the minimum set of class libraries
  available:
   • Connected Device Configuration (CDC)
   • Connected Limited Device Configuration (CLDC)
CLDC
•   128 kilobytes of memory to run Java;
•   32 kilobytes for memory allocation in runtime;
•   No user interface;
•   Low power processing, battery enabled device;
•   16-32 Mhz Processor
Profiles
• Needed APIs to develop applications for a
  specific set of devices
   •   MIDP
   •   IMP
   •   PBP
   •   ...
MIDP
• Mobile Information Device Profile;
• MIDP defines the following set of classes:
• Application Lifecycle Package
• User Interface Package




                                                                                  Mobile Information
• Persistence Package




                                                                                   Device Profile
                                                        Networking


                                                                     Persistent
                                            Interface




                                                                      Storage
• Networking Package



                                   MIDlet


                                              User
                                   APIs
• Language and Utility Packages



                                                                 CLDC Core classes
                                                                     CLDC or KVM
MIDP
• 3 versions available:
                               MIDP 1.0          MIDP 2.0
  Memory Requirement       At least 200KB   At least 256KB
  High/Low-Level UI

  Network API

  Persistent Storage API

  Game API

  Secure networking

  Push Registry

  Signed MIDlets
MIDlets
• Apps Java that run on MIDP devices are known
  as MIDlets
• MIDlets are defined in the
  javax.microedition.midlet package
• Child of the abstract class
  javax.microedition.midlet.MIDlet
• Life cycle defined and managed by methods
  implemented in the MIDlet;
MIDlets
• An application manager controls the MIDlet running
• The MIDlet behavior is controlled by a life cycle
  through methods that a MIDlet has to implement
  default constructor()

                          startApp()
            Paused                         Active
                          pauseApp()


       destroyApp()                     destroyApp()
                          Destroyed
MIDlets
 • The platform can change the state from Active to
   Paused at any time


                       startApp()
         Paused                           Active
                        pauseApp()


   destroyApp()                        destroyApp()
                        Destroyed
MIDlets
 • The method destroyApp() of a MIDlet is called when
   the platform needs shutdown a MIDlet


                     startApp()
       Paused                           Active
                     pauseApp()


  destroyApp()                       destroyApp()
                      Destroyed
MIDlets
 • Let´s see how to code a MIDlet
   #stopTalking
   #startCoding
JAD and JAR
 • JAD (Java Application Descriptor)
    • Provides information on the content of a JAR file

 • JAR (Java Archive)
    • Packaging various kinds of information (classes, images,
      audio, data)

 • Attributes JAR/JAD
Development process
 Development Station    MyMIDlet.jad


   MyMIDlet.java                Download
                                 /deploy

        javac                              Target Devices

                                Download
   MyMIDlet.class                /deploy

                       MyMIDlet.jar
      preverify


    MyMIDlet.class        jar
Thanks
             Marlon Luz
 ext-marlon.luz@nokia.com
               @marlonluz

Mais conteúdo relacionado

Mais procurados

J2me
J2meJ2me
Presenting Cloud Computing
Presenting Cloud ComputingPresenting Cloud Computing
Presenting Cloud Computing
Naveen Karn
 
J2ME
J2MEJ2ME
J2ME Unit_01
J2ME Unit_01J2ME Unit_01
J2ME Unit_01
Prashanth Shivakumar
 
J2ME
J2MEJ2ME
Sotona
SotonaSotona
J2ME GUI Programming
J2ME GUI ProgrammingJ2ME GUI Programming
J2ME GUI Programming
Rohan Chandane
 
J2ME
J2MEJ2ME
MOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMSMOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMS
Senthil Kanth
 
Introduction to java micro edition
Introduction to java micro editionIntroduction to java micro edition
Introduction to java micro edition
Raphael Wanjiku
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
Govardhan Gottigalla
 
HP, the gloabl leader in Thin Clients
HP, the gloabl leader in Thin ClientsHP, the gloabl leader in Thin Clients
HP, the gloabl leader in Thin Clients
HP Thin Clients
 

Mais procurados (12)

J2me
J2meJ2me
J2me
 
Presenting Cloud Computing
Presenting Cloud ComputingPresenting Cloud Computing
Presenting Cloud Computing
 
J2ME
J2MEJ2ME
J2ME
 
J2ME Unit_01
J2ME Unit_01J2ME Unit_01
J2ME Unit_01
 
J2ME
J2MEJ2ME
J2ME
 
Sotona
SotonaSotona
Sotona
 
J2ME GUI Programming
J2ME GUI ProgrammingJ2ME GUI Programming
J2ME GUI Programming
 
J2ME
J2MEJ2ME
J2ME
 
MOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMSMOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMS
 
Introduction to java micro edition
Introduction to java micro editionIntroduction to java micro edition
Introduction to java micro edition
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
 
HP, the gloabl leader in Thin Clients
HP, the gloabl leader in Thin ClientsHP, the gloabl leader in Thin Clients
HP, the gloabl leader in Thin Clients
 

Semelhante a Nokia Asha App Development - Part 1

03 midp
03 midp03 midp
03 midp
corneliuskoo
 
Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)
Wambua Wambua
 
Introduction to Java ME
Introduction to Java MEIntroduction to Java ME
Introduction to Java ME
Jussi Pohjolainen
 
Java ME CLDC MIDP
Java ME CLDC MIDPJava ME CLDC MIDP
Java ME CLDC MIDP
SMIJava
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007
Edoardo Schepis
 
Intro to Java ME and Asha Platform
Intro to Java ME and Asha PlatformIntro to Java ME and Asha Platform
Intro to Java ME and Asha Platform
Jussi Pohjolainen
 
2 mobile development frameworks and tools dark temp
2   mobile development frameworks and tools dark temp2   mobile development frameworks and tools dark temp
2 mobile development frameworks and tools dark temp
Shahid Riaz
 
Java me introduction
Java me   introductionJava me   introduction
Java me introduction
NokiaAppForumSerbia
 
Java me introduction
Java me   introductionJava me   introduction
Java me introduction
NokiaAppForumSerbia
 
Android village @nullcon 2012
Android village @nullcon 2012 Android village @nullcon 2012
Android village @nullcon 2012
hakersinfo
 
City search documentation
City search documentationCity search documentation
City search documentation
Rajesh Varanasi
 
The Java Story
The Java StoryThe Java Story
The Java Story
David Parsons
 
Mobile Application Development MAD J2ME UNIT 2
Mobile Application Development  MAD J2ME UNIT 2Mobile Application Development  MAD J2ME UNIT 2
Mobile Application Development MAD J2ME UNIT 2
Pallepati Vasavi
 
Android application development
Android application developmentAndroid application development
Android application development
Fahad A. Shaikh
 
Mobile Application Development JEDI
Mobile Application Development JEDIMobile Application Development JEDI
Mobile Application Development JEDI
Alver Noquiao
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
RajeshSukte1
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
CDSukte
 
Android Architecture design programming with java
Android Architecture design programming with javaAndroid Architecture design programming with java
Android Architecture design programming with java
ssuser471dfb
 
Symbian os
Symbian osSymbian os
Symbian os
Sandeep Kamath
 
Self-Driving Data Center
Self-Driving Data CenterSelf-Driving Data Center
Self-Driving Data Center
Sergey A. Razin
 

Semelhante a Nokia Asha App Development - Part 1 (20)

03 midp
03 midp03 midp
03 midp
 
Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)
 
Introduction to Java ME
Introduction to Java MEIntroduction to Java ME
Introduction to Java ME
 
Java ME CLDC MIDP
Java ME CLDC MIDPJava ME CLDC MIDP
Java ME CLDC MIDP
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007
 
Intro to Java ME and Asha Platform
Intro to Java ME and Asha PlatformIntro to Java ME and Asha Platform
Intro to Java ME and Asha Platform
 
2 mobile development frameworks and tools dark temp
2   mobile development frameworks and tools dark temp2   mobile development frameworks and tools dark temp
2 mobile development frameworks and tools dark temp
 
Java me introduction
Java me   introductionJava me   introduction
Java me introduction
 
Java me introduction
Java me   introductionJava me   introduction
Java me introduction
 
Android village @nullcon 2012
Android village @nullcon 2012 Android village @nullcon 2012
Android village @nullcon 2012
 
City search documentation
City search documentationCity search documentation
City search documentation
 
The Java Story
The Java StoryThe Java Story
The Java Story
 
Mobile Application Development MAD J2ME UNIT 2
Mobile Application Development  MAD J2ME UNIT 2Mobile Application Development  MAD J2ME UNIT 2
Mobile Application Development MAD J2ME UNIT 2
 
Android application development
Android application developmentAndroid application development
Android application development
 
Mobile Application Development JEDI
Mobile Application Development JEDIMobile Application Development JEDI
Mobile Application Development JEDI
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
 
Android Architecture design programming with java
Android Architecture design programming with javaAndroid Architecture design programming with java
Android Architecture design programming with java
 
Symbian os
Symbian osSymbian os
Symbian os
 
Self-Driving Data Center
Self-Driving Data CenterSelf-Driving Data Center
Self-Driving Data Center
 

Mais de Marlon Luz

Como a Microsoft faz software: Desgerenciando Pessoas
Como a Microsoft faz software: Desgerenciando PessoasComo a Microsoft faz software: Desgerenciando Pessoas
Como a Microsoft faz software: Desgerenciando Pessoas
Marlon Luz
 
Homo Appiens - O ser humano que desenvolve Apps. Você é um?
Homo Appiens - O ser humano que desenvolve Apps. Você é um?Homo Appiens - O ser humano que desenvolve Apps. Você é um?
Homo Appiens - O ser humano que desenvolve Apps. Você é um?
Marlon Luz
 
Microsoft & Internet of Things
Microsoft & Internet of ThingsMicrosoft & Internet of Things
Microsoft & Internet of Things
Marlon Luz
 
Construindo Universal Apps para Windows e Windows Phone
Construindo Universal Apps para Windows e Windows PhoneConstruindo Universal Apps para Windows e Windows Phone
Construindo Universal Apps para Windows e Windows Phone
Marlon Luz
 
Loja de aplicativos e portal do desenvolvedor
Loja de aplicativos e portal do desenvolvedorLoja de aplicativos e portal do desenvolvedor
Loja de aplicativos e portal do desenvolvedor
Marlon Luz
 
O que há de novo no Windows Phone
O que há de novo no Windows PhoneO que há de novo no Windows Phone
O que há de novo no Windows Phone
Marlon Luz
 
Agilidade em aplicativos mobile
Agilidade em aplicativos mobileAgilidade em aplicativos mobile
Agilidade em aplicativos mobile
Marlon Luz
 
Loja de Aplicativos e Portal do Desenvolvedor
Loja de Aplicativos e Portal do DesenvolvedorLoja de Aplicativos e Portal do Desenvolvedor
Loja de Aplicativos e Portal do Desenvolvedor
Marlon Luz
 
Desenvolvendo Apps para Windows phone
Desenvolvendo Apps para Windows phoneDesenvolvendo Apps para Windows phone
Desenvolvendo Apps para Windows phone
Marlon Luz
 
Desenvolvimento para Windows Phone
Desenvolvimento para Windows PhoneDesenvolvimento para Windows Phone
Desenvolvimento para Windows Phone
Marlon Luz
 
Babel fish, Guias e APIs
Babel fish, Guias e APIsBabel fish, Guias e APIs
Babel fish, Guias e APIs
Marlon Luz
 
Desenvolvimento de Apps para celulares Nokia Lumia & Nokia asha
Desenvolvimento de Apps para celulares Nokia Lumia & Nokia ashaDesenvolvimento de Apps para celulares Nokia Lumia & Nokia asha
Desenvolvimento de Apps para celulares Nokia Lumia & Nokia asha
Marlon Luz
 
Potencialidades de um telefone celular para pessoas com necessidades especiais
Potencialidades de um telefone celular para pessoas com necessidades especiaisPotencialidades de um telefone celular para pessoas com necessidades especiais
Potencialidades de um telefone celular para pessoas com necessidades especiais
Marlon Luz
 
Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2
Marlon Luz
 
Game Development for Nokia Asha Devices with Java ME #2
Game Development for Nokia Asha Devices with Java ME #2Game Development for Nokia Asha Devices with Java ME #2
Game Development for Nokia Asha Devices with Java ME #2
Marlon Luz
 
Distribua sua App para o mundo e ganhe $$
Distribua sua App para o mundo e ganhe $$Distribua sua App para o mundo e ganhe $$
Distribua sua App para o mundo e ganhe $$
Marlon Luz
 
Desenvolvendo Games para Nokia Asha
Desenvolvendo Games para Nokia AshaDesenvolvendo Games para Nokia Asha
Desenvolvendo Games para Nokia Asha
Marlon Luz
 
Programação para mobile: Serviços e Aplicativos
Programação para mobile: Serviços e AplicativosProgramação para mobile: Serviços e Aplicativos
Programação para mobile: Serviços e Aplicativos
Marlon Luz
 
In-app purchasing for java me apps
In-app purchasing for java me appsIn-app purchasing for java me apps
In-app purchasing for java me apps
Marlon Luz
 
Aprenda a programar somente o necessário com Mogli: O menino lobo
Aprenda a programar somente o necessário com Mogli: O menino loboAprenda a programar somente o necessário com Mogli: O menino lobo
Aprenda a programar somente o necessário com Mogli: O menino lobo
Marlon Luz
 

Mais de Marlon Luz (20)

Como a Microsoft faz software: Desgerenciando Pessoas
Como a Microsoft faz software: Desgerenciando PessoasComo a Microsoft faz software: Desgerenciando Pessoas
Como a Microsoft faz software: Desgerenciando Pessoas
 
Homo Appiens - O ser humano que desenvolve Apps. Você é um?
Homo Appiens - O ser humano que desenvolve Apps. Você é um?Homo Appiens - O ser humano que desenvolve Apps. Você é um?
Homo Appiens - O ser humano que desenvolve Apps. Você é um?
 
Microsoft & Internet of Things
Microsoft & Internet of ThingsMicrosoft & Internet of Things
Microsoft & Internet of Things
 
Construindo Universal Apps para Windows e Windows Phone
Construindo Universal Apps para Windows e Windows PhoneConstruindo Universal Apps para Windows e Windows Phone
Construindo Universal Apps para Windows e Windows Phone
 
Loja de aplicativos e portal do desenvolvedor
Loja de aplicativos e portal do desenvolvedorLoja de aplicativos e portal do desenvolvedor
Loja de aplicativos e portal do desenvolvedor
 
O que há de novo no Windows Phone
O que há de novo no Windows PhoneO que há de novo no Windows Phone
O que há de novo no Windows Phone
 
Agilidade em aplicativos mobile
Agilidade em aplicativos mobileAgilidade em aplicativos mobile
Agilidade em aplicativos mobile
 
Loja de Aplicativos e Portal do Desenvolvedor
Loja de Aplicativos e Portal do DesenvolvedorLoja de Aplicativos e Portal do Desenvolvedor
Loja de Aplicativos e Portal do Desenvolvedor
 
Desenvolvendo Apps para Windows phone
Desenvolvendo Apps para Windows phoneDesenvolvendo Apps para Windows phone
Desenvolvendo Apps para Windows phone
 
Desenvolvimento para Windows Phone
Desenvolvimento para Windows PhoneDesenvolvimento para Windows Phone
Desenvolvimento para Windows Phone
 
Babel fish, Guias e APIs
Babel fish, Guias e APIsBabel fish, Guias e APIs
Babel fish, Guias e APIs
 
Desenvolvimento de Apps para celulares Nokia Lumia & Nokia asha
Desenvolvimento de Apps para celulares Nokia Lumia & Nokia ashaDesenvolvimento de Apps para celulares Nokia Lumia & Nokia asha
Desenvolvimento de Apps para celulares Nokia Lumia & Nokia asha
 
Potencialidades de um telefone celular para pessoas com necessidades especiais
Potencialidades de um telefone celular para pessoas com necessidades especiaisPotencialidades de um telefone celular para pessoas com necessidades especiais
Potencialidades de um telefone celular para pessoas com necessidades especiais
 
Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2
 
Game Development for Nokia Asha Devices with Java ME #2
Game Development for Nokia Asha Devices with Java ME #2Game Development for Nokia Asha Devices with Java ME #2
Game Development for Nokia Asha Devices with Java ME #2
 
Distribua sua App para o mundo e ganhe $$
Distribua sua App para o mundo e ganhe $$Distribua sua App para o mundo e ganhe $$
Distribua sua App para o mundo e ganhe $$
 
Desenvolvendo Games para Nokia Asha
Desenvolvendo Games para Nokia AshaDesenvolvendo Games para Nokia Asha
Desenvolvendo Games para Nokia Asha
 
Programação para mobile: Serviços e Aplicativos
Programação para mobile: Serviços e AplicativosProgramação para mobile: Serviços e Aplicativos
Programação para mobile: Serviços e Aplicativos
 
In-app purchasing for java me apps
In-app purchasing for java me appsIn-app purchasing for java me apps
In-app purchasing for java me apps
 
Aprenda a programar somente o necessário com Mogli: O menino lobo
Aprenda a programar somente o necessário com Mogli: O menino loboAprenda a programar somente o necessário com Mogli: O menino lobo
Aprenda a programar somente o necessário com Mogli: O menino lobo
 

Último

GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
Federico Razzoli
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 

Último (20)

GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 

Nokia Asha App Development - Part 1

  • 1. App Development for Nokia Asha Devices with Java ME Marlon Luz - INdT Nokia Developer Evangelist @marlonluz
  • 2. WHAT IS THE CENTER OF INdT? RESEARCH & DEVELOPMENT nonprofit with focus in development of new concepts, products & solutions for areas related to mobile tecnologies and internet
  • 3. Training Content • Nokia App Store • Nokia Platforms • Introduction to Java ME Development • High Level UI components • Data storage • Publishing your App
  • 5. Nokia App Store, Series40 & JavaME 120k+ apps, 15m downloads/day Brasil: 150m downloads (total), 50m in 2012, 500k per day, 56% in Series 40, 73% of purchases are JavaME apps
  • 6. Nokia Platforms Java apps Phones Series 40 Silverlight, XNA
  • 10. Nokia SDK 2.0 for Java • Emulates the device environment • Location, contacts, etc. • Emulates mobile events like battery, sms, etc. • IDE Integration
  • 11. Development • IDE Installation • Overview JavaME • First Project
  • 12. JavaME Overview • Java Micro Edition (ME) is the Java for devices with limited resources • Java ME brings a common platform for devices like: • Mobile phones • Pagers • PDAs • Set-top boxes • Java ME defines a set of configurations, profiles e optional APIs; • Java ME enables the developers to create applications for a large number of devices;
  • 13. Configurations • Support a wide variety of products that fit within the scope of J2ME; • Defines a Java platform for a wide variety of devices, also defines a JVM (Java Virtual Machine) and the minimum set of class libraries available: • Connected Device Configuration (CDC) • Connected Limited Device Configuration (CLDC)
  • 14. CLDC • 128 kilobytes of memory to run Java; • 32 kilobytes for memory allocation in runtime; • No user interface; • Low power processing, battery enabled device; • 16-32 Mhz Processor
  • 15. Profiles • Needed APIs to develop applications for a specific set of devices • MIDP • IMP • PBP • ...
  • 16. MIDP • Mobile Information Device Profile; • MIDP defines the following set of classes: • Application Lifecycle Package • User Interface Package Mobile Information • Persistence Package Device Profile Networking Persistent Interface Storage • Networking Package MIDlet User APIs • Language and Utility Packages CLDC Core classes CLDC or KVM
  • 17. MIDP • 3 versions available: MIDP 1.0 MIDP 2.0 Memory Requirement At least 200KB At least 256KB High/Low-Level UI Network API Persistent Storage API Game API Secure networking Push Registry Signed MIDlets
  • 18. MIDlets • Apps Java that run on MIDP devices are known as MIDlets • MIDlets are defined in the javax.microedition.midlet package • Child of the abstract class javax.microedition.midlet.MIDlet • Life cycle defined and managed by methods implemented in the MIDlet;
  • 19. MIDlets • An application manager controls the MIDlet running • The MIDlet behavior is controlled by a life cycle through methods that a MIDlet has to implement default constructor() startApp() Paused Active pauseApp() destroyApp() destroyApp() Destroyed
  • 20. MIDlets • The platform can change the state from Active to Paused at any time startApp() Paused Active pauseApp() destroyApp() destroyApp() Destroyed
  • 21. MIDlets • The method destroyApp() of a MIDlet is called when the platform needs shutdown a MIDlet startApp() Paused Active pauseApp() destroyApp() destroyApp() Destroyed
  • 22. MIDlets • Let´s see how to code a MIDlet #stopTalking #startCoding
  • 23. JAD and JAR • JAD (Java Application Descriptor) • Provides information on the content of a JAR file • JAR (Java Archive) • Packaging various kinds of information (classes, images, audio, data) • Attributes JAR/JAD
  • 24. Development process Development Station MyMIDlet.jad MyMIDlet.java Download /deploy javac Target Devices Download MyMIDlet.class /deploy MyMIDlet.jar preverify MyMIDlet.class jar
  • 25. Thanks Marlon Luz ext-marlon.luz@nokia.com @marlonluz