Syllabus of lectures:
* Introduction to design of applications for mobile devices, technology overview and their share on mobile devices, development environments.
* Java ME architecture, target devices, relation to other Java technologies such as Java Card, Personal Java, etc.
* Basic Java ME technologies, targeted on devices with limited hardware abilities.
* CLDC configuration, limited KVM virtual machine. Differences between CLDC versions.
* MIDP and PDAP profiles for devices meeting CLDC requirements. Profile characteristics and differences. Development and life-cycle of Java ME applications.
* Over-the-Air Provisioning (OTA) architecture. Deployment of applications via Internet.
* Forms, graphics and sound in Java ME.
* Configuration for devices with default Java virtual machine, CDC configuration and its profiles: Foundation Profile, Personal Profile and RMI profile.
* Java ME extension APIs: API detection, JTWI and related APIs for messaging (WMA) and multimedia (MMA). File access, XML processing, etc.
* File access, XML processing.
* Generic Connection Framework communication - sockets, Bluetooth.
* Java ME security model: Virtual machine security, security of processed data, especially SSL, WTLS a and X.509-based techniques.
* Java ME applications for MIDP profile: MIDlet signing, sensitive APIs. Limitations of unsigned MIDlets.
* MIDlet debugging, code optimization, (partial) obsfucation as a protection method against reverse engineering. Push Registry.
Syllabus of computer exercises:
* The computer labs focus on obtaining of practical experience in the design of applications for mobile devices. Students will implement simple Java ME applications during the labs, following the topics addressed during lectures. Basic work with emulator - NetBeans or EclipseME, Sun Java Wireless Toolkit, execution on mobile devices.
* RecordStore record processing
* Basic GUI elements (high-level).
* HTTP and sockets in Generic Connection Framework (GCF).
* HTTP connections in GCF, (Application) Properties.
* XML processing - SAX resp. kXML in Java ME.
* Working with Canvas, keypress events.
* Using JSR-75.
* Wireless messaging.
* Introduction to design of applications for mobile devices, technology overview and their share on mobile devices, development environments.
* Java ME architecture, target devices, relation to other Java technologies such as Java Card, Personal Java, etc.
* Basic Java ME technologies, targeted on devices with limited hardware abilities.
* CLDC configuration, limited KVM virtual machine. Differences between CLDC versions.
* MIDP and PDAP profiles for devices meeting CLDC requirements. Profile characteristics and differences. Development and life-cycle of Java ME applications.
* Over-the-Air Provisioning (OTA) architecture. Deployment of applications via Internet.
* Forms, graphics and sound in Java ME.
* Configuration for devices with default Java virtual machine, CDC configuration and its profiles: Foundation Profile, Personal Profile and RMI profile.
* Java ME extension APIs: API detection, JTWI and related APIs for messaging (WMA) and multimedia (MMA). File access, XML processing, etc.
* File access, XML processing.
* Generic Connection Framework communication - sockets, Bluetooth.
* Java ME security model: Virtual machine security, security of processed data, especially SSL, WTLS a and X.509-based techniques.
* Java ME applications for MIDP profile: MIDlet signing, sensitive APIs. Limitations of unsigned MIDlets.
* MIDlet debugging, code optimization, (partial) obsfucation as a protection method against reverse engineering. Push Registry.
Syllabus of computer exercises:
* The computer labs focus on obtaining of practical experience in the design of applications for mobile devices. Students will implement simple Java ME applications during the labs, following the topics addressed during lectures. Basic work with emulator - NetBeans or EclipseME, Sun Java Wireless Toolkit, execution on mobile devices.
* RecordStore record processing
* Basic GUI elements (high-level).
* HTTP and sockets in Generic Connection Framework (GCF).
* HTTP connections in GCF, (Application) Properties.
* XML processing - SAX resp. kXML in Java ME.
* Working with Canvas, keypress events.
* Using JSR-75.
* Wireless messaging.