iOS Expander (ICEmobile-SX)

Table of Contents


The iOS Surf Expander (iPhone/iPod/iPad) ICEmobile-SX is a standard iOS native Application available on the App Store. It expands the standard browser with device-specific native features.


ICEmobile-SX can be invoked in two different ways: via icemobile:// URLs or directly through the UI. The primary use is intended to be the URL "helper" since that allows ICEmobile-SX to expand existing browser capabilities with native device features.

Browser URL Invocation

The most important mechanism for invoking ICEmobile-SX is via an iOS custom URL scheme. This allows a URL in the browser to launch ICEmobile-SX with a variety of parameters. The following URL commands are supported:

  • icemobile://c=register
    record the Apple Push Notification Service device identifier and inform ICEfaces that ICEmobile-SX is supported
  • icemobile://c=camera
    capture an image with the camera or the photo album if the camera is not available
  • icemobile://c=camcorder
    capture an image with the video camera or the photo album if the camera is not available
  • icemobile://c=microphone
    capture a sound clip with the microphone
  • icemobile://c=scan
    scan a QR code to text via the zxing integration

With the general structure being:

icemobile://c=<URL-encoded command?id=<component ID>>
    &r=<URL-encoded return URL>
    &JSESSIONID=<session ID>
    &u=<URL-encoded upload URL>

Invoking an icemobile:// URL in the browser will cause ICEmobile-SX to be launched with the specified command. Once the user completes the media capture, the data will be sent via an HTTP POST to the upload URL.

Direct UI Invocation

Photos, Videos, Audio Clips, and QR Code text can be uploaded from ICEmobile-SX to a specified URL. The specified URL must be able to accept an HTTP multipart POST containing the media or text value. The mediacast demo includes a Servlet based on Servlet 3.0 that will accept the upload and include it as a "message" in the application pushed to the current users.

Build Environment

Building ICEmobile requires Xcode with a minimum of iOS SDK 4.3.

Source Code

The source code for ICEmobile iOS is found in the directory client/ios/icemobile-sx/ICEmobile-SX.xcodeproj.

Application Deployment

Typically, it should be sufficient to install ICEmobile-SX directly from the App Store. However, if you wish to build a custom version you must follow the standard iOS development process, including code signing. To see how the development process works, take a look at the iOS Quick Start Tutorial

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

© Copyright 2016 ICEsoft Technologies Canada Corp.