J2ME
Last edited September 6, 2006
More by logix812 »
Concepts

Georgia Tech Mobile Technologies Group
mtg.lcc.gatech.edu/
The Mobile Technologies Group (MTG) at Georgia Institute of Technology is a research group and project studio focused on exploring the social impact of current and next- generation mobile technologies.  This site has so many great links to conceptual thinking about the medium.  Go to the people pages.  They are doing a lot of interesting things.
Alternate reality game - Wikipedia, the free encyclopedia
en.wikipedia.org/wiki/Alternate_Reality_Game
Alternate reality game
The Go Game - The Ultimate Corporate Team Building Game
www.thegogame.com/team/index.asp
The Go Game is the future of corporate play. It's the intersection of wireless technology, Mission: Impossible, and team building as you have never seen it.
Location Based Data

The Location Based Service - LBS - zone
www.lbszone.com/content/view/176/1/

The Location API for J2ME

The Location API for J2ME specification defines an optional package, javax.microedition.location, that enables developers to write wireless location-based applications and services for resource-limited devices like mobile phones, and can be implemented with any common location method. The compact and generic J2ME location APIs provide mobile applications with information about the device's present physical location and orientation (compass direction), and support the creation and use of databases of known landmarks, stored in the device.

JSR 179 requires the Connected Device Configuration (CDC) or version 1.1 of the Connected Limited Device Configuration (CLDC). CLDC 1.0 isn't adequate because it doesn't support floating-point numbers, which the API uses to represent coordinates and other measurements. The Location API doesn't depend on any particular profile -- it can be used with MIDP or the Personal Profile.

The hardware platform determines which location methods are supported. If it doesn't support at least one location provider, LBS won't be possible. Applications can request providers with particular characteristics, such as a minimum degree of accuracy. Some location methods may be free; others may entail service fees. The application should warn the user before any charges are incurred.

It is up to the application to determine the criteria for selecting the location method. Criteria fields include: accuracy, response time, need for altitude, and speed. Once the application obtains a LocationProvider instance that meets the criteria, it can use that object to obtain the location, in either of two ways:

  • Invoke a method synchronously to get a single location.
  • Register a listener and get periodic updates at application-defined intervals.

The Location class abstracts the location results. Its object contains coordinates, speed if available, textual address if available, and a time stamp that indicates when the location measurements were made.

Coordinates are represented by either of two classes:

  • A Coordinates object represents a point's latitude and longitude in degrees, and altitude in meters.
  • A QualifiedCoordinates object contains latitude, longitude, and altitude, and also an indication of their accuracy, represented as the radius of an area.

The following segment of code demonstrates how to obtain the present location of the device synchronously:

...

// Set criteria for selecting a location provider:
// accurate to 500 meters 
horizontally
Criteria cr= new Criteria();
cr.setHorizontalAccuracy(500);

// Get 
an instance of the provider
LocationProvider lp= LocationProvider.getInstance(cr);

// 
Request the location, setting a one-minute timeout
Location l = lp.getLocation(60);
Coordinates 
c = l.getQualifiedCoordinates();

if(c != null ) {
  // Use coordinate information
 
 double lat = c.getLatitude();
  double lon = c.getLongitude();
}
...
 

Landmarks

A landmark is a location associated with a name and a description. Landmarks can be stored in a device-based database, where they can be shared among all J2ME applications. Landmarks can store frequently used locations: home, office, favorite restaurants, and so on. Each is represented by a Landmark instance, and the database by a LandmarkStore. You can create multiple named LandmarkStores to group locations into categories such as cinemas, museums, or customer sites.

If the device includes a compass, the application may be able to determine not only its location but its orientation, which is useful in navigational applications. The Orientation class represents the device's azimuth as an angle from due north, which the application can easily convert to a compass direction.

The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 179
www.jcp.org/en/jsr/detail?id=179
JSR 179: Location API for J2METM

An Optional Package that enables developers to write mobile location-based applications for resource-limited devices. The API works on the J2ME CLDC v1.1 and CDC configurations.

javax.microedition.location (JSR179 Location API for J2ME)
www-users.cs.umn.edu/~czhou/docs/jsr179/lapi/javax...

Package javax.microedition.location

The javax.microedition.location package contains the basic classes needed to request and get a location result.
Tutorials

java.net: J2ME Tutorial, Part 1: Creating MIDlets
today.java.net/pub/a/today/2005/02/09/j2me1.html
J2ME Introduction
Introduction to J2ME Web Services
Web Services APIs for J2ME, Part 2: Java API for XML processing
www-128.ibm.com/developerworks/wireless/library/wi...
Java API for XML processing

Essential Java Classes

This trail discusses classes from the Java platform that are essential to most programmers. It focuses on classes in the java.lang and java.io packages, including these:
  • Thread and its related classes
  • Throwable and Exception, and their friends
  • The Reader, Writer, InputStream, and OutputStream classes from java.io and their descendants
Using Threads in J2ME Applications
Java Programming Examples
Dr. Dobb's | The Java Location API | November 27, 2005
www.ddj.com/184406388?pgno=1
The Java Location API

Knowing where you are is half the battle

Java Tips - Location Based Services on J2ME devices
www.java-tips.org/java-me-tips/midp/location-based...
J2ME location APIs provide mobile applications with information about the device's present ... Illustration display physical location of mobile device. ...
Downloads

Sun Java Wireless Toolkit (formerly known as Java 2 Platform, Micro Edition (J2ME) Wireless Toolkit)
java.sun.com/products/sjwtoolkit/
Sun Java Wireless Toolkit
Development - Sprint Phones

Location Based Services
Device Enablement/Disablement
The content on this page is provided by a Google Notebook user, and Google assumes no responsibility for this content.