Symbian
Symbian Developer Library

SYMBIAN OS V9.4

Feedback

[Index] [Previous] [Next]


Considerations for licensees using CAF

The Content Access Framework has several configurable aspects that can be altered at build time.

[Top]


F32 Agent user interface

The F32 Agent by default has no user interface. Its interface is implemented by a separate F32AGENTUI.DLL. This DLL can be replaced with a DLL that actually does display information on the screen.

See also:

ContentAccess::TF32AgentUiFactory

[Top]


CAF recognizer mime types

The content types that CAF is allowed to map to x-caf-contentMimeType are given in the RECCAF.DLL configuration file. This file is located in the apparc server's private directory as \private\10003a3f\RecCaf\RecCafMimeTypes.txt.

Licensees should check to be sure all required MIME types are included in the file.

[Top]


Allowing CAF to load non-ROM based agents

The Content Access Framework's default resolution behaviour on target devices results in Content Access Agents (CAAs) only being loaded from the ROM drive. This behaviour increases the security and reliability of the Content Access Framework and is in addition to the Platform Security capabilities system.

If a licensee wishes to produce a more open device relying only on capabilities to allow post production agents to be installed this default resolution behaviour can be overidden. When it is overidden CAF will load all CAAs visible to the ECOM service regardless of the drive that contains them. To do this the macro CAF_LOAD_POST_PRODUCTION_AGENTS will need to be defined at ROM build. In the emulator platform the default resolution behaviour is as if this macro is always defined.

The definition of this macro will patch a data variable in the caf.dll at ROM build-time. See \\epoc32\\include\\caf\\patchdata.h and \\epoc32\\rom\\include\\caf.iby.

[Top]


Omitting Content Access Agents from ROMs

It is possible for device integrators to choose whether to support both protected and unprotected content or just unprotected content with the definition of the SYMBIAN_EXCLUDE_DRM_AGENT_PLUGINS macro at the ROM build stage.

Licensee UI platforms that wish to support this feature will need to honour this macro in the obey files of the Content Access Agents that are integrated into their platform. For example:

##ifndef __OMA_CAA_IBY__ 

##define __OMA_CAA_IBY__

##ifndef SYMBIAN_EXCLUDE_DRM_AGENT_PLUGINS

ECOM_PLUGIN(omacaa_plugin.dll,10111213.rsc)
file=ABI_DIR\\BUILD_DIR\\omacaa_server.exe  omacaa_server.exe
data=DATAZ_\\private\\10111210\\settings.ini   \\private\\10111210\\settings.ini

##endif

##endif

This option was introduced in Symbian OS v9.3 to allow easy customisation of Symbian OS. See the files RemovableFeatures.iby and feature.iby in \\epoc32\\rom\\include.