Child pages
  • Windows Store Building Guide
Skip to end of metadata
Go to start of metadata

 

Introduction

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:

  1. Create RAMP app as per normal.
  2. Download the Windows Store RAMP-app template project.
  3. Set a few RAMP properties in two configuration files and run a script to apply changes.
  4. Edit app manifest.
  5. Build app and deploy.

This document guides you through the process.

Requirements

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 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:

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: ramp_config.cfg and misc_config.cfg.

Note

A script must be executed before the changes made to the config files are applied.

 

Set ramp_config.cfg

In the root directory of the project edit ramp_config.cfg to reflect your app's RAMP-settings.

ramp_config.cfg
feature.host=s.ramp.virtualmobiletech.com/ramp/ramp/feature/ft
config.feature.name=root.CompanyID.ApplicationID.main
feature.persist=1
secure.host.0=s.ramp.virtualmobiletech.com/ramp
rsakey.testkey1.mod=afefd5cc5322cf1f47181b7ecbe78fdaf7f7527e1411ab65afa61a555e55b3e7637bb94acb870bf13195210b7e307f53762fcb65d86f8e578d45c17e209549aad863ce358506e17e698b34a29880c631b4dee7765ca20ffa5d5ea3fc7fa56f235bee0b560a5923b3438cc0e4f33ba9c121592ff17d3fdbcdbebcb633a858942f
rsakey.testkey1.version=1
rsakey.keyexchange.mod=c6f3541a4f7c4db7b449db8042be4b2b5f653b0bc53dabd5b3e84b3063c02ef2ce314a52398ada8b0dabab2ce18cc55889359ecaa8d8e7be01c3ca51e327a789c4aeda73523c81bc4d1c73eebeffdff95b5ccbf208a235239dc64e46fc7be6c701c1380a2d17ae295c921c90408776c1e5eb763958893ff4b4252556e8594cad
rsakey.keyexchange.version=1

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.name contains 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.host refers to the app's feature server, and the key rsakey.testkey1.mod is its feature key.
  • The n-th defined service server must be added as a property named secure.host.(n-1). The property secure.host.0 refers to the first service server.
  • All user defined keys must be added to this file in the format rsakey.(key name).mod and must also include a version property defined in the format rsakey.(key name).version.

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.

Set misc_config.cfg

In the root directory of the project edit misc_config.cfg to configure miscellaneous properties.
misc_config.cfg
generate_slash_image=1
If property generate_splash_image is set to 1, the device's splash screen for this app will be generated from the project's logo images. More info in section "Personalize app".

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:

  • x86
  • x64
  • ARM
  • architecture neutral

and be deployed to various destinations:

  • the local machine
  • simulator
  • connected device
  • Windows Store

Testing

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.

 

Personalize app

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.
  • ramp_ws\Assets\Logo.png, 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.
  • ramp_ws\Assets\SplashScreen.png, 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).

Note

Additional images and scaled versions of the provided images can be added to the template project, more info in the manifest documentation.

 

 





  • No labels