In the previous post we discussed how to create simple UbiqMobile application. We developed a single-screen app with a numeric counter in the center and two buttons below – for increasing and decreasing the counter. Also, we debugged it within a built-in emulator and deployed its server-side part to the UbiqMobile Cloud. Now we are going to test the app on real mobile devices.
One of the ways to access your application from the mobile device is to use a universal container application. The universal container is a thin mobile client that provides access to multiple UbiqMobile applications. Once a client of this type is downloaded from the appropriate mobile app store and installed on the mobile device, it provides universal access to all UbiqMobile application deployed onto the cloud or dedicated server.
A universal container application can be downloaded and installed for various platforms:
- Windows phone
- Java ME
Unfortunately, at the moment you cannot download a universal container app for iOS from AppStore because of their policy restrictions. We are working on it and trying to resolve this issue. For iOS apps, another way to access UbiqMobile application should be used – an automated build of a customized mobile client.
During the first run, the universal client application registers itself in UbiqMobile network. It connects to UbiqMobile Cloud and gets a unique client ID. This way you can get access to publicly available UbiqMobile applications. In our case, we need to access a personally deployed application, so we need to perform some additional actions to configure the client.
When you deploy UbiqMobile application onto the cloud first time after SDK installation, a new instance of server environment (“sandbox”) is created in UbiqMobile Cloud. It has two basic parameters – a server IP address and so-called Certificate ID – a numeric value that is used for connecting mobile devices to the sandbox. Both these parameters are available through Client Portal of UbiqMobile website.
To access the applications deployed into your sandbox, the universal mobile client should be properly configured. For this purpose, you will need to open “Server Settings” panel in the universal client application. It is necessary to fill up the following attributes on the panel (see the android example image below):
- Host – IP address of the server, where the application was deployed – it is already filled by default with proper value
- Port (5454 by default) – IP connection port
- Use Certificate flag – must be set to ON if you want to bind the universal client to the personal sandbox
- Certificate ID – unique ID pointing to the specific sandbox
Now we need to get the settings for the sandbox, where we deployed our application. A registered user can obtain correct information about host IP address, Port and certificate ID on ubiqmobile.cloudapp.net website (Clients Portal) in “Profile” section. If you didn’t register during UbiqMobile SDK download and installation, you should be prompted to register in Clients Portal just before a first deployment of server-side part of the developed application.
That’s it! After configuring settings of the universal client according to values obtained from Clients Portal, it will automatically connect to the sandbox and run applications from there. In our case, we have only one application deployed so the universal client will connect to this app by default. If there are multiple applications deployed into the sandbox, the client supports a list of applications (available through an icon on smartphones or through the softkey menu on Java phones) and can switch between them at any time.
Finally, our app on a mobile phone screen looks as follows: