Configuring a native Windows Phone 8 application with the MobileFirst Platform SDK
To serve a native Windows Phone 8 (Silverlight) application, MobileFirst Server must be aware of it. For this purpose, IBM MobileFirst Platform Foundation provides a Native API library, which contains a set of APIs and configuration files.
This tutorial explains how to generate the Windows Phone 8 Native API and how to integrate it with a native Windows Phone 8 (Silverlight) application. These steps are necessary for you to be able to use it later on for tasks such as connecting to MobileFirst Server, invoking adapter procedures, implementing authentication methods, and so on.
Prerequisite: Developers are expected to be proficient with Microsoft developer tools.
This tutorial covers the following topics:
- Creating a MobileFirst native API
- The wlclient.properties file
- Creating and configuring a Windows Phone 8 native application(Silverlight)
- Tutorials to follow next
Creating a MobileFirst native API
- In the terminal with the CLI installed, create a new MobileFirst project using:
$ mfp create HelloWorldNative.
- Go to the newly created project directory:
$ cd HelloWorldNative/.
- Add a new Windows Phone 8 native API using
$ mfp add api WP8HelloWorld -e windowsphone8.
- Navigate into the native API folder and run the command:
$ mfp push. This action is required for MobileFirst Server to recognize the application if it attempts to connect.
- In MobileFirst Studio, create a MobileFirst project and add a MobileFirst Native API.
- In the New MobileFirst Native API dialog, enter your application name and select Windows Phone Sliverlight 8 for the Environment field.
- Right-click the generated NativeAPI folder (located in
your-projects/apps/your-nativeapi-app-name) and select Run As > Deploy Native API.
Note: This action is required for MobileFirst Server to recognize the application if it attempts to connect.
The MobileFirst native API contains several components:
worklight-windowsphone8.dllfile is a MobileFirst API library that you must copy to your native WP8 project. This can be found in "buildtarget" folder under the respective hardware architecture.
Newtonsoft.Json.dllfile is a library that provides JSON support.
application-descriptor.xmlfile defines application metadata and security settings that MobileFirst Server enforces.
wlclient.propertiesfile contains connectivity settings that a native Windows Phone 8 Silverlight application uses. You must copy this file to your native Windows Phone 8 Silverlight project.
- As with any MobileFirst project, you create the server configuration by modifying the files that are in the
The wlclient.properties file
You can edit the
wlclient.properties file to set connectivity information.
wlServerProtocol– The communication protocol to MobileFirst Server, which is either
wlServerHost– The host name of the MobileFirst Server instance.
wlServerPort– The port of the MobileFirst Server instance.
wlServerContext– The context root path of the application on MobileFirst Server.
wlAppId– The application ID as defined in the
wlAppVersion– The application version.
wlEnvironment– The target environment of the native application.
wlPlatformVersion– The MobileFirst SDK version.
languagePreferences– The list of preferred locales.
Creating and configuring a Windows Phone 8 native application
- Create a Windows Phone Silverlight project or use an existing one.
- Add as a reference the
Newtonsoft.Json.dllfiles.Choose the right
worklight-windowsphone8.dllfrom the folder that matches the architecture of the target device (ARM/x86).
- Copy the
wlclient.propertiesfile to the root of the native project.
- In Visual Studio, open the
wlclient.propertiesProperties window and set the Copy to Output Directory option to Copy always.
- Add the following capabilities to the
For more information, see the topic about developing native C# applications for Windows Phone 8, in the user documentation.
Tutorials to follow next
Now that your application contains the Native API library, you can follow the tutorials in the Native WP8 Development section to learn more about authentication and security, server-side development, advanced client-side development, notifications and more.▲