Once a device has been started, the Intel® DAL Generic Host Application can be run. The Generic Host Application enables emulation of a host application.
When working with an API Level 1 device:
- Clicking Install performs a trusted application installation command.
- Clicking Uninstall performs a trusted application un-installation command.
- Clicking Send performs an API level 1 send-and-receive operation.
- Closing the host-application window has no side-effects, and the trusted application must be uninstalled manually by clicking Uninstall regardless of host windows being closed.
When working with an API Level 1.1 and above device:
- Every host application window corresponds to a single trusted application session. Open a new host application session window each desired session.
- When you click Start Session, Emulauncher does the following:
- Emulauncher attempts an install command. If the trusted application was already installed, the sequence continues.
- Emulauncher performs a create session command.
- Once the session has been registered, Emulauncher performs a register event operation. As a result, any event sent to the host session will be displayed in the host application session window.
- Clicking Send performs an API level 1.1 and above send-and-receive operation.
If you close the host application session window, Intel DAL Generic Host Application performs the following sequence of operations:
- Performs a session close operation.
- Attempts to uninstall the trusted application. If any other sessions of this trusted application are currently active, this operation will safely fail and the trusted application will remain installed.
There is an Android Generic Host Application.
The Generic Host Application (GHA) works on both real hardware and in the emulation mode, as provided by the Emulauncher tool. The Emulauncher tool is provided as part of every SDK installation and, therefore, exists on all machines with Intel DAL installed. The GHA tries to work in the emulation environment by default.
When the GHA is running in emulation mode on a machine which contains real hardware, the option "switch to real hardware" is enabled. Checking this option restarts the environment on the real hardware. Users can switch back to the emulated environment from real hardware mode to emulation mode by turning on the Emulauncher, and clicking OK while getting the GHA message:"Emulauncher turned on.."
Generic Host Application Options during Development
The GHA provides functionality at 2 main stages in the development of an Intel DAL project:
- Predevelopment stage for new Intel DAL users to help understand the communication process between the host application and the trusted application. When using the GHA, the process and the data flow are very easy and clear, and the performance stages and the sequential gateway between them give the user some ideas about the communication experience with trusted applications by Intel DAL. The GHA includes the option of a Default Intel Trusted Application for new users or a host application developer without a trusted application for testing purposes. The Default Intel Trusted Application is suited to the firmware or the emulation level, and contains the three main methods of all Intel DAL trusted applications and they are called in the correct places, according to the GHA:
- Development stage for developers who want to debug and validate created trusted applications. The developer can
- Browse to the desired trusted application file, identified by its .dalp extension.
- Open sessions.
- Send and receive data to and from the TA.
- Close open sessions.
- Uninstall the TA.
It is possible in one instance of the GHA to install multiple trusted applications, and in one open session to send data many times.
Note: When closing the GHA, the last session that it opened will be closed.
The GHA is dependent on and synchronized with the Emulauncher and, in every status change or version change in the Emulauncher, the GHA is informed of it and synchronized with it, while displaying status update messages to the user.
For further details, see the section relevant to your operating system: