Application Development

Material download:

Maemo Chinook Application Development training material is available here.

Maemo Chinook Application Development

- introduction to maemo application development on top of maemo platform
- maemo Getting Started as prerequisite
- can be used (together with Getting Started) as independent training material
- planned to be 3 day class room course
- course content as html is available here

Table of Contents:

  • Introduction
    • Introduction to maemo Application Development
  • Chapter 01 - GTK+ Basics
    • GLib basics
    • Signaling mechanism
    • GTK+ terminology
    • Hello World learns to terminate itself
    • GObject interface
    • Adding menus and layout
    • Hildon widgets
    • Using accessors
    • Handling dynamic memory
    • Avoiding deprecated functions
  • Chapter 02 - GNU Make and makefiles
    • What is GNU Make?
    • How does make work?
    • The simplest real example
    • Anatomy of a makefile
    • The default goal
    • On names of makefiles
    • Questions
    • Adding make goals
    • Making a target at a time
    • PHONY-keyword
    • Specifying the default goal
    • Other common phony goals
    • Variables in makefiles
    • Variable flavors
    • Recursive variables
    • Simple variables
    • Automatic variables
    • Integrating with pkg-config
  • Chapter 03 - More Widgets
    • Using menus in Hildon
    • Adding toolbars
    • Designing Application State
    • Processing key events
    • Adding File-dialogs
    • Where to go next?
    • Conclusions
  • Chapter 04 - Support Libraries
    • Doing File I/O
    • GnomeVFS
    • Storing user preferences
    • GConf basics
    • Using GConf
    • Using GConf to read and write preferences
  • Chapter 05 - GNU Autotools
    • Introduction to GNU autotools
    • Brief history of managing portability
    • GNU autoconf
    • Substitutions
    • Introducing automake
    • Checking for distribution sanity
    • Cleaning up
    • Integration with pkg-config
  • Chapter 06 - Integration with the Application Framework
    • Integrating into AF
    • The desktop file
    • The service file
    • Application support
    • Autotools support for the service and desktop file
    • Testing
  • Chapter 07 - Packaging Applications
    • Creating Debian packages
    • Packaging Basics
    • Dependencies
    • Packaging infrastructure
    • Debian packages
    • Installation process
    • Package relationships
    • Package control file (aka Debian control file)
    • A maemo example control file
    • Creating your package
    • Adding debugging support for a package
    • Building the package for a device
    • Installing packages into an Internet Tablet
  • APPENDIX A - The Final Program
    • Appendix A contents
    • Autoconfigure driver
    • Automake configuration
    • Desktop file template for AF
    • Service file template for AF
    • Development bootstrap (autogen)
    • Development cleanup (antigen)
    • Program listing