Developing Software for Wireless Devices

Slides:



Advertisements
Similar presentations
MIDP Mobile Information Device Profile Johnny Yau CIS 642 Prof. Insup Lee.
Advertisements

Presentation 11: SOAP on small devices. Ingeniørhøjskolen i Århus Slide 2 af 14 Outline Which small devices? What are the limitations and what kind of.
Pengantar Teknologi Mobile 12
Introduction of J2ME Mobile solutions. Overview What is J2ME. How does J2ME work? Java J2ME Carriers and Products. The Two Configuration of J2ME. Profiles.
J2ME 25 July Overview  What is J2ME?  The CLDC and CDC configurations  MIDP and MIDlets  Development Tools  Demonstrations.
Will Wireless Gaming Be a Winner? February 1, 2007 Sumit Rohit Thaker Sung Ho Hwang.
Writing Your First MIDlet Running JAVA on a Cell Phone Jon A. Batcheller January 27, 2004.
UNDERSTANDING JAVA APIS FOR MOBILE DEVICES v0.01.
Introduction to Java 2 Micro Edition Mark Balbes, Ph.D. Senior Software Engineer Jeff Brown Senior Software Engineer.
Programming Handheld and Mobile devices 1 Programming of Handheld and Mobile Devices Lecture 10 Java for MIDs Rob Pooley
Introduction to Java The objectives of this chapter are: To describe the key aspects of Java To describe the Java software development kit (SDK) To explain.
Developing an Application with J2ME Technology Scott Palmer, Nat Panchee, Judy Sullivan, Karen Thabet, Sten Westgard.
Interactive Visual System By Arthur Evans, John Sikorski, and Patricia Thomas.
J2ME for Palm Speaker: Chen-Nien Tsai Adviser: Kai-Wei Ke.
Introduction to Java Programming, 4E
J2ME Prepared by: - Gaery- Ronny - Alan- Andy. Why Technology for Mobile Devices? The nature of wireless devices is changing Old devices: All the software.
PDA Programming Using J2ME Presenter :涂俊凱 Date : 2003/4/8.
Making Cell Phone Games An Overview Ray Ratelis Guild Software, Inc.
Google Android as a mobile development platform T Internet Technologies for Mobile Computing Olli Mäkinen.
Developing J2ME Applications Mobile and Wireless Networks.
The 21th century Repairman Agenda Introduction J2EE J2ME Demonstration.
Cosc 4730 Phone Programming in Java An Introduction.
Java Platform, Micro Edition (J2ME)
Java 2 Platform, Micro Edition (J2ME) By Xiaorong Wang.
Detecting Changes  ItemStateListener interface – detect changes in internal state of an Item  new selection made in a ChoiceGroup  adjusted value of.
IP Camera Security System Dallan Byrne th Electronic and Computer Engineering 2007 Supervisor: Fergal O’ Malley.
J2ME Programming. 2 Recommended Books Programming Wireless Devices with the Java2 Platform, Micro Second Edition (Paperback) by Roger Riggs (Editor),
Android Introduction Platform Overview.
EclipseME Java Micro Edition The Eclipse Way Craig Setera April 19, 2006.
J2ME Java for Mobile Environments Based on J2ME In A Nutshell, by Kim Topley, O’Reilly & Associates Inc., 2002, and Tetris by Alexei Patinov.
An Introduction to the Java ME Project Jens A Andersson.
Programming Handheld and Mobile devices 1 Programming of Handheld and Mobile Devices Lecture 12 Using the KToolbar Rob Pooley
Getting Started with JXTA for J2ME Advisor : Dr. Ching-Long Yeh Report : DI.2, 洪泰昌 ( ) Course: XML 文件管理.
Michael Brockway Advanced Applications Development in Java J2ME -- Introduction l Introduction / Overview l Java 2 Micro Edition n CLDC n MIDP l Examples.
Mobile Applications with Java ME & BlackBerry. Overview Java ME –Networking –Databases Java ME and the BlackBerry –The BlackBerry wireless device –Converting.
Week II Platforms and Engines. Overview Platforms and Engines Tools and SDKs Netbeans Game Development Walkthrough
Computer Science Wi-Fi App using J2ME and MVC Architecture Advisor : Dr. Chung-E Wang Department of Computer Science Sacramento State University Date:
J2ME Presented by May Sayed & Menna Hawash. Outline Introduction “Java Technology” Introduction “What is J2ME?” J2ME Architecture J2ME Core Concepts 
Java 2 Micro Edition (J2ME) and the world of java
PROG Mobile Java Application Development PROG Mobile Java Application Development BlackBerry App Lifecycle Java ME API.
CPRG 215 Introduction to Object-Oriented Programming with Java Module 1-Introduction to Java Topic 1.2 Getting the Tools and Setting Up the Development.
1Basics of J2ME. 2 Objectives –Understand the different java API’s and how the mobile edition API’s fit in –Understand what a mobile configuration and.
Programming Handheld and Mobile devices 1 Programming of Handheld and Mobile Devices Lecture 12 lcdui Rob Pooley
Martin Schmidt / The Silent Revolution Mobile Java.
Programming Handheld and Mobile devices 1 Programming of Handheld and Mobile Devices Lecture 13 lcdui and OXO Rob Pooley
Introduction to Java Programming with Forte Y. Daniel Liang.
Session 1 Introduction to Java. Objectives Java Simplified / Session 1 / 2 of 32 Explain the history of Java Explain Java in brief List the types of Java.
29-Nov-15 Getting Ready for Java. 2 What is Java? Java is a programming language: a language that you can learn to write, and the computer can be made.
Copyright©2008 N.AlJaffan®KSU1 Chapter 7 Operating System and Utility Programs.
TODAY Android Studio Installation Getting started Creating your 1 st App Beginning to understanding Intents.
THE WINDOWS OPERATING SYSTEM Computer Basics 1.2.
1 Introduction to J2ME Outline MIDP Building J2ME Apps- Tool J2ME Wireless Toolkit Demo MIDlet Programming -- MIDlet Transition States -- Midlet Skeleton.
Mobile Programming Mobile Programming - Ordibehesht Ordibehesht 1390.
Introduction to Java Programming, 4E Y. Daniel Liang.
CSE403: MIDlets and Ant1 MIDlets and Ant April 3, 2003 Shane Cantrell Zach Crisman.
Advance Computer Programming Market for Java ME The Java ME Platform – Java 2 Micro Edition (J2ME) combines a resource- constrained JVM and a set of Java.
Visual Mobile Applications with Netbeans 6.0 Your Name Sun Campus Ambassador Your Address.
Visual Mobile Gaming Your Name Sun Campus Ambassador Your Address.
Introduction to Algorithm. What is Algorithm? an algorithm is any well-defined computational procedure that takes some value, or set of values, as input.
The Java Platform Micro Edition Java ME
Operating System and Utility Programs
Part II Software When developing software there are several particularities to be aware of: Java is widespread used because of the platform independence.
Programming of Handheld and Mobile Devices
Lab 3: More Phone-Based Techniques
MOBILE DEVICE OPERATING SYSTEM
Wireless Instant Messaging Using J2ME
By Jeff Heaton An Overview of J2ME By Jeff Heaton
Java for Mobile Devices
Outcome of the Lecture Upon completion of this lecture you will be able to understand Fundamentals and Characteristics of Java Language Basic Terminology.
Presentation transcript:

Developing Software for Wireless Devices Robert Hatch Sean Meredith James Pate Williams, Jr.

Overview Sun Java SDK 1.3 Forte Sun Java Micro Edition Packages of MIDP

Desirable Software Components Sun Java 1.3.1+ Software Development Kit Sun Forte 3.0 Integrated Development Environment Sun Java 2 Micro Edition Wireless Toolkit All are freely downloadable from Sun and require at least a 450 MHz Pentium II with 128 MB of RAM

Sun Java 2 SDK 1.3 Improvements more robust than previous Java SDKs sound API that includes a MIDI synthesizer and sequencer support for the Java 2 Micro Edition Wireless Toolkit

Sun Forte 3.0 Integrated Development Environment for Java programming comparable to Borland’s JBuilder 5.0 constructed using Java a resource hog

Sun Java2 ME Wireless Toolkit Version 1.0.3 can be used either in integrated mode with Forte 3.0 or as a stand alone product. The integrated version is easier for code development and testing The Wireless Toolkit implements a Mobile Information Device Profile (MIDP) for some common wireless devices

Wireless Toolkit The toolkit includes the following emulators: default grey phone minimum phone Motorola i85s Palm OS device RIM Java handheld

Wireless Toolkit The emulators can function fairly closely to read devices in terms of the GUIs that they offer.

Java Mobile Information Device Profile (MIDP) Consists of five packages: user interface package persistence package application lifecycle package networking package core packages

User Interface Package Listener interfaces ChoiceAPI CommandListener ItemStateListener Buttons defined as commands actions can be captured by implementing the CommandListener interface, e.g. by defining the commandAction method

User Interface Package: Common GUI Elements Alert Canvas Command ChoiceGroup DateField Display Font Form Gauge Graphics Image Item List Screen Ticker

Persistence Package Components Associated class RecordComparator RecordEnumeration RecordFilter RecordListener Associated class RecordStore - a class representing a record store

Application Lifecycle Package Defines Mobile Information Device Profile applications and interactions between the application and the environment in which the application runs Class associated MIDlet - MIDP application on the device States Paused Active Destroyed

MIDlet Life Cycle

Networking Package Components Connection ContentConnection Datagram DatagramConnection HttpConnection InputConnection

Networking Package Components Associated class OutputConnection StreamConnection StreamConnectionNotifier Associated class Connector - placeholder for the static methods that are used for creating all the Connection jobs.

Networking Package Support for stream connections (TCP/IP) and datagram connections (UDP/IP) TCP/IP - connection-oriented protocol; reliable and in-order delivery of packets UDP/IP - connectionless-oriented protocol; unreliable and possibly out-of-order delivery of packets

Networking Package (Cont.) Some wireless devices such as Palm OS devices do not offer the datagram protocol and only use stream connections Java MIDP supports HTTP connections TCP/IP networking is fairly straightforward and only requires a few lines of code to implement

Core Packages java.io java.lang java.util

Wireless Device Software Development Steps Create a MIDlet suite template using Forte 3.0 Fill in the MIDlet details to incorporate desired functionality Execute code on various emulators; the same code behaves differently on distinct platforms Port code to desired device Test on an actual wireless device

Demo