Note: I’ve found a number of dead/broken-links, which I be fixing over time. Thanks for your patience.
Java ME, MIDP, Articles, Tech Tips & Source Code
- A Survey of J2ME Today (Update)
- Preparing for the Mobile Application Developer Certification (SCMAD)
- Mobile Services Architecture Specification
- Simple URL encoding
- Using JSR-172 XML API (ZIP file)
- A Simple Ordered Hashtable
- The Mobile Information Device Profile 1.0 for Java 2 Micro Edition: Professional Developer’s Guide
- Notes on BlackBerry Development
- Iterating thru a LCDUI
Form - Using Wireless Messaging API 1.1
- A Generic LCDUI List
- A Generic LCDUI Form
- Using NetBeans 5.0
- Download the source code for “Using Bluetooth APIs” articles.
- J2ME Technology Turns 5!
- Summary of CLDC-Based Profiles
- The J2ME Mobile Information Device Profile (MIDP) 2.0
- The MIDP 2.0 Push Registry
- Managing the MIDlet Life-Cycle with a Finite State Machine
- Java 2 Micro Edition Basics
- Elements of a Typical J2ME MIDP Business Application
- The Complexity of Developing Mobile Networked Data Services…
- Introduction to OTA Application Provisioning
- The Generic Connection Framework
- Adapting Java ME applications for Sony Ericsson
- Nokia S60 Platform – A JTWI Platform on Steroids
- Using PushRegistry API
- Invoking Platform Services in MIDP 2.0
- Accessing a Resource over HTTP
- Externalizing Resources – Persisting Images in RMS
- Obfuscating Your MIDlet Suite
- Implementing a Local Cache to Manage Resources
From my MIDP 1.0 Book
- Java 2 Micro Edition Basics (PDF) A Very Brief History of Java, Architecture of Java, Java 2, Java Community Process, Java 2 Micro Edition, Profiles, Connected Limited Device Configuration (CLDC), Supported J2SE Classes, Generic Connection Framework…
- Programming Strategies for Small Devices (PDF) If in Doubt, Do Not Use Java, Move Computation to the Server, Simplify the Application, Build Smaller Applications, Remove the Public Members, Use Less Memory at Run Time, Use Scalar Types, Do Not Depend on the Garbage Collector, Help the Garbage Collector, Use Lazy Instantiation, Release Resources Early, Reuse Objects, Avoid Exceptions, Code with Performance in Mind, Use Local Variables, Avoid String Concatenation, Use Threads, but Avoid Synchronization, Separate the Model…
- Java 2 Micro Edition (J2ME) Specifications (PDF) Introducing the Micro Edition, A New Virtual Machine, New and Changed Classes, Configurations and Profiles, Building Blocks, The KVM, Related Technologies
PIM API for Java ME
- An Introduction to the PIM API for Java ME, Part 1 – The SDN Mobile Java site is presenting a six part series on the Personal Information Management API (JSR 75). Java ME expert and JCP member Enrique Ortiz provides the definitive text on the PIM API.
- Using the PIM API for Java ME, Part 2 – Portability Considerations – In this installment Enrique explores how to test for PIM API presence on your device and test for presence of the various databases and fields. Learn how to navigate the API and build robust applications.
- Using the PIM API for Java ME, Part 3 – Security Considerations – covers security considerations when using the PIM API. Will your application protect the user’s address book, calendar and to-do list? In part 3 learn how PIM is designed to work in conjunction with the MIDP 2.0 security framework.
- Part 4 of Using the PIM API for Java ME covers some design considerations when using the PIM API. Now it’s time to explore design issues that will affect how your application is developed. Read this, then start your application design.
- Part 5 of Using the PIM API for Java ME covers examples of how to do everything from retrieving the names of PIM databases through PIM create/read/update/delete operations to exception handling. Now it’s time to play.
- Part 6, Summary of PIM Fields, the final installment of the six-part series on the Personal Information Management API (JSR 75), provides a reference on the PIM fields and pointers to related on-line resources.
Bluetooth Connectivity
- Using the Java APIs for Bluetooth Wireless Technology, Part 1
- Using the Java APIs for Bluetooth, Part 2 – Putting the Core APIs to Work
- Download the source code for “Using Bluetooth APIs” articles
- Developing Bluetooth Java Applications with P900
RIM BlackBerry
- BlackBerry Development: Using Apache Ant (Dr. Dobb’s Portal)
- Notes on BlackBerry Development
Messaging, Multimedia Messaging
- The Wireless Messaging API 2.0
- The Wireless Messaging API 1.1
- Advanced Message Coding Using JSR-120
- The Wireless Messaging API FAQ
XML, JSON, Web Services, SOA
- Understanding the Web Services Subset API for Java ME – introduces the subset API, the subset differences, the gotchas, and other information.
- An Introduction to the Web Services For J2ME APIs
- Comments on Nokia SOA
- The Web Services API for J2ME, Part 1 (Remote Invocation)
- The Web Services API for J2ME, Part 2 (XML Parsing)
- Using JavaScript Object Notation (JSON) in Java ME for Data Interchange
Near-Field Communication
- An Introduction to Near-Field Communication and the Contactless Communication API
- NFC in Mobile Commerce (PDF)
- General info and links on Touch, NFC.
Good External Resources
- Discovering Devices and Sending Files via Bluetooth in Java ME (Vikram Goyal)
- Nepomuk Karbacher’s Pages on Java ME, Bluetooth, other (German only)
- The Hecl Programming Language
Pingback: About Mobility » Blog Archive » Oracle announced it finalized its acquisition of Sun — Bye Sun and Thanks…
Dear Sir/Madam,
I want to wrtie a sudoku program and need to read numbers from mobile.But I have a problem.
I am trying to read keypad of mobile in gamecanvas with netbeans. The code is :
protected void keyPressed(int keyCode){
if (keyCode == KEY_NUM1) { something }
if (keyCode == KEY_NUM2) {something }
if (keyCode == KEY_NUM3) { something }
etc…
In IDE emulator it can read 2,4,5,6,8 keys and in my mobile(SonyEricsonw880) only 1,3 keys work.
How can I solve the problem?
Yours faithfully
Hamid
how to intercept the incoming sms smartphone and do not appear in the inbox ? can somebody help me
In J2ME/MIDP is a hard thing to do. There was a spec at one point to do just that. Th only way to do this is by sending the SMS to a different PORT #, one that your application listens to. I cover some of this here: http://developers.sun.com/mobility/midp/articles/wma2/
Sr. Enrique Ortíz
Cordial saludo.
Me gustaría saber si usted podría darme información a cerca de cómo establecer conexiones en J2ME, entre un celular y una página https y visualizar en la pantalla la información, pues he buscado e intentado de varias maneras, pero no he logrado el resultado que necesito. Estoy trabajando con NetBeans.
De antemano agradezco la colaboración que me pueda brindar.
Saludos cordiales.
Jenny. Hace mucho tiempo que no he tocado J2ME.
La forma el utilizar un HttpConnection para leer la pagina. Si quieres visualizarla vas a tener que interpretarla. Lo otro es abrir el browser por medio de un ContentHandler.