A RAMP app can unfortunately not be deployed as a "Windows Store app" (aka Metro app or Windows RT app) to supporting devices, i.e. Windows 8 and Windows RT devices, through the usual RAMP channels. This is because Microsoft imposes a restriction that the app can only be distributed via the Windows Store.
The current path to submitting a RAMP app to the Windows Phone Store is as follows:
- Create RAMP app as per normal.
- Download the Windows Store RAMP-app template project.
- Set a few RAMP properties in two configuration files and run a script to apply changes.
- Edit app manifest.
- Build app and deploy.
This document guides you through the process.
The RAMP app you created in Eclipse runs on a RAMP virtual machine. For this app to run on a specific device it requires the RAMP virtual machine built for that device. This virtual machine is packaged with your app when it is downloaded from the RAMP deployment platform. Therefore, to build the Windows Store version of your RAMP app, you must package it with the Windows Store RAMP virtual machine.
Since the Windows Store RAMP virtual machine is written in native Windows Store code the requirements to building the Windows Store RAMP app are similar to building a native Windows Store app. These requirements are:
- A device running Windows 8
- Visual Studio 2012
- Windows 8 software development kit (SDK) installed on said device
A more in-depth explanation or requirements is available here.
Requirements for Windows Store distribution
The Windows Store is accessible through Wi-Fi and cellular networks and it is the only distribution platform for Windows Store apps. It requires:
- Windows Dev Center account.
Download and Configure RAMP properties
The RAMP Windows Store template project for Visual Studio can be downloaded here. The template can be extracted to any location with write-access. To configure this template to your specific RAMP app, properties must be set in two configuration files:
A script must be executed before the changes made to the config files are applied.
In the root directory of the project edit
ramp_config.cfg to reflect your app's RAMP-settings.
Most of the configuration file properties correspond to values you entered when creating a new application on the RAMP Deployment Platform. The Advanced Guide provides more information on the properties in this configuration file. Note the following:
- The property
feature.namecontains your RAMP Deployment Platform's Company ID and your application's Application ID in the format
'root'.(company ID).(application ID).'main'.
- The property
feature.hostrefers to the app's feature server, and the key
rsakey.testkey1.modis its feature key.
n-th defined service server must be added as a property named
secure.host.(n-1). The property
secure.host.0refers to the first service server.
- All user defined keys must be added to this file in the format
rsakey.(key name).modand must also include a version property defined in the format
If you are building a basic app that uses the default RAMP settings, i.e.:
- does not use a secure server
- and does not access a custom feature server.
Then the only property you have to set is feature.name.
It is possible to specify how the built Windows Store app retrieves its RAMP feature. The default, production-recommended setting is
feature.persist=1. This specifies the app downloads the feature only the first time it runs and when feature changes are detected.
When testing an app in development, time is saved by setting properties
feature.persist=0. A new feature is then retrieved from the feature server each time the app is started, and consequently a Windows Store app need not be rebuilt to test RAMP project changes.
misc_config.cfgto configure miscellaneous properties.
Apply config changes
To apply the changes made to the two configuration files, run the script file "applyConfig.exe" located in the root of the project folder. The script can be executed by either double-clicking on it or launching it from the command-line. When the script completes a window will appear with a success message or reason for failure message.
Edit app manifest
The manifest provides various properties to personalize the app and to specify how it should be published. The app's manifest is edited from within Visual Studio. Open the Windows Store RAMP template project in Visual Studio and navigate to the "Store" option in the menu. The option is either one of the main options displayed on the menu bar or can be found under "PROJECT" on the menu bar. From the "Store" drop down menu – select "Edit App Manifest".
There are four tabs of properties, with in depth info available here.
Some important properties are:
- Application UI tab:
- Display Name : name for the app that is displayed to users.
- Description : text that describes the app on its tile in Windows.
- Packaging tab:
- Package Name: uniquely identifies the app on device. Is only important during testing since will be replaced when uploaded to store.
Package Display Name: app name that appears in the Store.
- Version : app's version.
Choose Certificate : certificate used to sign the app.
Remember to save the manifest after modification.
Build and deploy
The app can be built for various architectures:
- architecture neutral
and be deployed to various destinations:
- the local machine
- connected device
- Windows Store
The app can be tested in multiple ways from Visual Studio:
- Deploy directly to a device by selecting the deployment device and launching in the standard Visual Studio fashion.
Build a package to be used on a device that has a develop license installed and meets the requirements for sideloading Windows Store apps. This task is performed when selecting "Create app Packages..." from the "Store" dropdown menu, and selecting "No" to the question "Do you want to build packages to upload to the Windows Store". The "Store" dropdown menu is either one of the main options displayed on the menu bar or can be found under "PROJECT" on the menu bar.
Deploy to Windows Store
The app can be packaged and deployed to the Windows Store from Visual Studio. This task is performed when selecting "Create app Packages..." from the "Store" dropdown menu, and selecting "Yes" to the question "Do you want to build packages to upload to the Windows Store". The "Store" dropdown menu is either one of the main options displayed on the menu bar or can be found under "PROJECT" on the menu bar.
It is possible to make some visual changes to template project to personalize the app's representation.
This list of images, relative to the project root, that can be replaced:
ramp_ws\Assets\SmallLogo.png, small image that appears in the corner of the tile to identify the app. A 30x30 png image.
, the square tile representing the app. A 150x150 png image.
ramp_ws\Assets\StoreLogo.png, the image that appears on the app in the Windows Store. A 50x50 png image.
ramp_ws\Resources\images\ramp_logo.png, the logo displayed on the loading screen. A 349x200 png image.
, the app's splash screen. A 620x300 png image. The generate_splash_image property in
misc_config.cfg must be set to "0" to change this image.
The Background color of the App's splash screen can be changed in the app manifest (the default is white).
Additional images and scaled versions of the provided images can be added to the template project, more info in the manifest documentation.