SlideShare ist ein Scribd-Unternehmen logo
1 von 25
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

Weitere ähnliche Inhalte

Was ist angesagt? (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
 

Ähnlich wie Nokia Asha App Development - Part 1

Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Wambua Wambua
 
Java ME CLDC MIDP
Java ME CLDC MIDPJava ME CLDC MIDP
Java ME CLDC MIDPSMIJava
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007Edoardo 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 PlatformJussi 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 tempShahid Riaz
 
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 documentationRajesh Varanasi
 
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 2Pallepati Vasavi
 
Android application development
Android application developmentAndroid application development
Android application developmentFahad A. Shaikh
 
Mobile Application Development JEDI
Mobile Application Development JEDIMobile Application Development JEDI
Mobile Application Development JEDIAlver Noquiao
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptRajeshSukte1
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptCDSukte
 
Android Architecture design programming with java
Android Architecture design programming with javaAndroid Architecture design programming with java
Android Architecture design programming with javassuser471dfb
 
Self-Driving Data Center
Self-Driving Data CenterSelf-Driving Data Center
Self-Driving Data CenterSergey A. Razin
 

Ähnlich wie 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
 

Mehr von 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 PessoasMarlon 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 ThingsMarlon 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 PhoneMarlon 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 desenvolvedorMarlon 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 PhoneMarlon Luz
 
Agilidade em aplicativos mobile
Agilidade em aplicativos mobileAgilidade em aplicativos mobile
Agilidade em aplicativos mobileMarlon 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 DesenvolvedorMarlon Luz
 
Desenvolvendo Apps para Windows phone
Desenvolvendo Apps para Windows phoneDesenvolvendo Apps para Windows phone
Desenvolvendo Apps para Windows phoneMarlon Luz
 
Desenvolvimento para Windows Phone
Desenvolvimento para Windows PhoneDesenvolvimento para Windows Phone
Desenvolvimento para Windows PhoneMarlon Luz
 
Babel fish, Guias e APIs
Babel fish, Guias e APIsBabel fish, Guias e APIs
Babel fish, Guias e APIsMarlon 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 ashaMarlon 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 especiaisMarlon Luz
 
Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2Nokia Asha App Development - Part 2
Nokia Asha App Development - Part 2Marlon 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 #2Marlon 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 AshaMarlon 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 AplicativosMarlon 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 appsMarlon 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 loboMarlon Luz
 

Mehr von 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
 

Kürzlich hochgeladen

Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Kürzlich hochgeladen (20)

Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

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