Frequently Asked Questions - General

MEAP stands for Multifunctional Embedded Application Platform. It is an application development platform that allows the creation of customized applications for Canon multifunctional peripheral devices. Customer applications can be installed and executed on Canon devices to add to the functionality of a device.

A multifunctional peripheral device (MFP) is a networked device that prints, copies, scans, and faxes. In addition, Canon MFPs have “mailboxes” on the device in which users can store document images for later retrieval and printing.

This link will show you a complete list of MEAP enabled devices.

MEAP applications can do very many things, such as:

  • Customize workflow to utilize print, scan, copy, and mailbox functions on the device.
  • Control the access privilege to the device functions based on user roles.
  • Monitor and manage device usage.
  • Control device local console for UI display and hard keys on the device panel.
  • Display a user interface on a Web browser.
  • Communicate using network functions.

The MEAP SDK contains documentation (manuals and JavaDocs), Sample Applications, Use Cases, and an emulator for testing MEAP applications on a PC. Additionally, the SDK includes tools to assist the development and verification processes.

The MEAP SDK costs $5,000. If required, the associated Login SDK costs $1,800. The fees include one year of technical support. Support for subsequent years can be purchased for $2,500 per year. Additionally, there may be a royalty for each Canon device on which the MEAP application is installed.

  1. A MEAP developer has to get the Canon MEAP SDK
  2. Develops the application jar file with MEAP SDK using any Java development tool and IDE
  3. Installs the application jar file on a device using SMS provided by MEAP platform
  4. Tests and QAs the application
  5. Submits the application to Canon for verification
  6. Distributes the application to customers

There are two types of SDK, Login SDK and MEAP SDK. Login SDK along with the MEAP SDK are used for developing a MEAP Login Application and MEAP SDK is used for developing a regular MEAP Application.

There are two types of MEAP applications, MEAP Login application (Login App) and regular MEAP application (MEAP App)
MEAP Login Application

  • Used to authenticate the user before access the device functions including Native and MEAP applications
  • Use Login SDK along with MEAP SDK to develop
  • Install with a license file using SMS

MEAP supports the standard J2ME/CDC (Java 2 Micro Edition with Connected Device Configuration) libraries found in the Foundation Profile and Personal Profile. In addition, MEAP has proprietary libraries that enable additional functionality. One such library is the CPCA Class Library, which can be used to control native device functions. Another library is the Common Toolkit (CTK) and Applet Tool Kit (ATK), a package of GUI components designed for peripheral devices. In addition, MEAP provides libraries for image format conversions, image display, a USB interface, MIB access, Storage, XML, encryption, and security.

CPCA is the abbreviation for Common Peripheral Controlling Architecture, an architecture that establishes control procedures and operations for functions of Canon peripheral devices. The CPCA Class Library is the Java-language interface for CPCA, allowing Java MEAP applications to utilize CPCA.

The CPCA Class Library encapsulates CPCA functionality in Java. It allows a MEAP application to control and monitor all device functionality including printing, copying, scanning, and mailboxes.

  1. Register with the Developer Support Program as an Essential member. Essential membership is automatically granted upon registration and is free of charge.
  2. Download and familiarize yourself with the MEAP materials available on this site.
  3. You can use the link for the MEAP Questionnaire Request that you will find under the SUPPORT drop down at the top of this page, or click on this link.
  4. You will be notified via email on approval of your request for the Questionnaire.
  5. Upon being granted access, you will find the link to the MEAP Application Questionnaire under the SUPPORT drop down at the top of this page.
  6. Complete the On-Line form.

Upon receipt of the completed questionnaire Canon will determine the technical feasibility of, and review your business case for your project.

MEAP applications are written in Java. MEAP is based on the J2ME (Java 2 Micro Edition) environment using the Connected Device Configuration (CDC), Foundation Profile (FP), Personal Profile (PP), and Personal Basis Profile (PBF).

The MEAP platform contains Java Runtime Environment which includes Java bytecode execution environment including JavaVM (Virtual Machine), CDC (Connected Device Configuration), Foundation Profile, Personal Basis Profile, and Personal Profile. MEAP platform provides the Service Management Service (SMS) to manages the life cycle of MEAP application using OSGi (Open Services Gateway Initiative) Framework. The application jar file is installed on the MEAP device via SMS.

A service is an application. MEAP has System Services and custom services. Custom services are also called custom applications.

MEAP services may be classified into three types from the standpoint of user interfaces:

  • Applet – displays a user interface on the device console.
  • Servlet – displays a user interface on a remote Web browser.
  • Esplet – has no user interface.

A MEAP application can contain one or more of these three types of service.

System services are software modules that provide functionality that enables MEAP applications to be installed and executed on a MEAP device. The MEAP platform comes with system services installed on the device. These include the Service Management Service (SMS), Local and Remote Login Services, the Applet Viewer Service, License Management Service, and an HTTP Service.

MEAP provides a Local Login Service (LLS) and a Remote Login Service (RLS). The LLS enables login at the device console using a User ID and Password or other authentication methods, such as card or biometric. The RLS enables login through a remote Web browser.

SMS is a System Service that allows MEAP applications to be managed on a MEAP device using a remote Web Browser. SMS can be used to install/uninstall and start/stop MEAP applications. It can also be used to obtain information about MEAP applications installed on a device and license information updates.

The Applet Viewer Service (AVS) manages the display of a MEAP applications user interface on the device LCD console.

The HTTP server provides the interface to servlet-type services. The HTTP server supports HTTP (port number: 8000). A Servlet-type service has a relative URL associated with it. The service name is defined when the service is developed, and an end user cannot change the URL. The HTTP server manages the service name and makes a request to the URL that is forwarded to the service.

No. MEAP devices have an HTTP Server that serves up web pages that can be viewed on a remote browser. However, there is no Web browser for MEAP devices that would allow the viewing of Web pages as part of a MEAP application.

Applications must be code-signed by Canon in order to be installed on end-user devices. An application is digitally signed after it passes Canon verification, assuring that the guidelines described in the MEAP SDK are followed. Additionally, the applications are encrypted to protect intellectual property.