Table of contents
TOC
Collapse the table of content
Expand the table of content

Phone metadata in DeviceTargetingInfo

Last Updated: 12/12/2016

Partners are required to set certain device metadata, including hardware, support, and OEM and MO information.

Partners are required to set the following information:

  • OEM and mobile operator information, used for display strings in the UI, device update, and connecting to the Windows Store.

  • Hardware component versions and software versions, used for targeting updates to devices and for user support.

  • A required phone number and optional website for user support, which appears in the About screen in Settings.

Constraints:

  • ImageTimeOnly – For those settings to put directly into the registry hive.

  • FirstVariationOnly – For those settings that can be configured at runtime and potentially based on SIM value.

Instructions:

  1. Create a customization answer file using the contents shown in the following code sample.

    <?xml version="1.0" encoding="utf-8" ?>  
    <ImageCustomizations xmlns="http://schemas.microsoft.com/embedded/2004/10/ImageUpdate"  
                         Name="PhoneMetadataDeviceTargetingInfo"  
                         Description="Use to set phone metadata including the phone model name, OEM and mobile operator name, hardware and software versions, and so on."  
                         Owner=""  
                         OwnerType="OEM"> 
    
      <!-- Define the Targets for the Variant --> 
      <Targets>
         <Target Id="">
            <TargetState>
               <Condition Name="" Value="" />
               <Condition Name="" Value="" />
            </TargetState>
         </Target>
      </Targets>
    
      <Static>
        <Settings Path="Multivariant">
          <Setting Name="Enable" Value="1" />
        </Settings>
        <Settings Path="AutoDataConfig">
          <Setting Name="Enable" Value="0" />
        </Settings>
      </Static>
    
      <Static>  
        <!-- These settings are ImageTimeOnly and will be put directly into the registry hive -->
        <Settings Path="DeviceInfo/Static">       
          <Setting Name="PhoneManufacturer" Value="" />    
          <Setting Name="PhoneManufacturerDisplayName" Value="" /> 
          <Setting Name="PhoneROMVersion" Value="" /> 
          <Setting Name="PhoneHardwareRevision" Value="" />    
          <Setting Name="PhoneSOCVersion" Value="" /> 
          <Setting Name="PhoneFirmwareRevision" Value="" />   
          <Setting Name="PhoneRadioHardwareRevision" Value="" />    
          <Setting Name="PhoneRadioSoftwareRevision" Value="" /> 
          <Setting Name="PhoneBootLoaderVersion" Value="" />    
          <Setting Name="PhoneROMLanguage" Value="" /> 
          <Setting Name="PhoneHardwareVariant" Value="" /> 
       </Settings>  
      </Static>
    
      <!-- Specify the Variant -->
      <Variant Name=""> 
        <TargetRefs>
          <TargetRef Id="" /> 
        </TargetRefs>
    
        <!-- These settings are FirstVariationOnly and can be configured at runtime potentially based on SIM value --> 
        <Settings Path="DeviceInfo/Variant">
          <Setting Name="PhoneMobileOperatorName" Value="" /> 
          <Setting Name="PhoneManufacturerModelName" Value="" />    
          <Setting Name="PhoneMobileOperatorDisplayName" Value="" /> 
          <Setting Name="PhoneSupportPhoneNumber" Value="" />    
          <Setting Name="PhoneSupportLink" Value="" /> 
          <Setting Name="PhoneOEMSupportLink" Value="" />    
          <Setting Name="PhoneModelName" Value="" /> 
          <Setting Name="RoamingSupportPhoneNumber" Value="" />
       </Settings> 
      </Variant>
    
    </ImageCustomizations>
    
  2. Specify an Owner and configure the targets and conditions for the variant.

  3. Specify a value for each of the following settings.

    ConstraintSetting NameDescription

    ImageTimeOnly

    PhoneManufacturer

    Required. This setting must contain a code specified by Microsoft that corresponds to the OEM. This setting must not be changed over time, even if an OEM name changes (such as in a merger); the original OEM name must continue to be specified.

    This setting is used for targeting device updates, for connecting to the store-within-a-store in the Windows Store, and for Watson reports. It also appears as part of the device friendly name on the Welcome screen, the About screen in Settings, the Ringtone list, and on the computer.

    The value must be a valid OEM ID. To get the valid OEM ID that applies to you, contact your Microsoft representative.

    The OEM ID value is in all capital letters, for example, FABRIKAM.

    To use an OEM-provided value to display in the Settings > About screen, OEMs can use the optional PhoneManufacturerDisplayName setting. For more information, see the next entry in this table.

    The PhoneManufacturer, PhoneManufacturerModelName, and PhoneMobileOperatorName should create a unique Phone-Operator-Pairing (POP). For more info, see Set a Phone-Operator-Pairing (POP).

    ImageTimeOnly

    PhoneManufacturerDisplayName

    Optional. Use this setting to create an OEM-provided value to display in the Settings > About screen, on apps running on the PC connected to the device through MTP, in the Manufacturer field in the device properties window when the device is connected to the PC through MTP, and in the list of backups on OneDrive and during initial device setup on the Restore backups page.

    If PhoneManufacturerDisplayName is set, the OS does not use the value in the PhoneManufacturer setting and uses the OEM-provided value to display in the About screen instead. If OEMs do not set a value for PhoneManufacturerDisplayName, the OS uses the value in the required PhoneManufacturer setting instead.

    When setting the value, OEMs must only use these characters: alphanumeric (A-Z, a-z, 0-9), space, period (.), comma (,)

    ImageTimeOnly

    PhoneROMVersion

    Optional. This value is specified by the silicon vendor and should not be modified by the OEM. It is used for targeting phone updates.

    This value has the format uint16.uint16.uint16.uint16.

    ImageTimeOnly

    PhoneHardwareRevision

    This value is specified by the silicon vendor and should not be modified by the OEM. It is used for targeting phone updates and for Watson reports.

    This value has the format uint16.uint16.uint16.uint16.

    ImageTimeOnly

    PhoneSOCVersion

    This value is specified by the silicon vendor and should not be modified by the OEM. It is used for targeting phone updates.

    This string must be less than 256 Unicode characters in length, and be alphanumeric (A-Z, a-z, 1-9). Leading and trailing spaces and other white space characters such as tabs are not permitted. The underscore character may be used to separate elements in the string, for example "Contoso_4000".

    ImageTimeOnly

    PhoneFirmwareRevision

    Required. This setting represents the complete version of the OEM software on the phone. It is used for targeting phone updates.

    This value has the format uint16.uint16.uint16.uint16. The recommended value is based on the Silicon Vendor (SV) BSP version (major.minor) and the OEM software version (major.minor), with the format "majorSV.minorSV.majorOEM.minorOEM". The value cannot be "0.0.0.0".

    ImageTimeOnly

    PhoneRadioHardwareRevision

    Optional. This value should reflect the current version of the OEM’s modem hardware. It should be incremented when the modem hardware is modified. It is used for targeting phone updates.

    This string must be less than 256 Unicode characters in length, and be alphanumeric (A-Z, a-z, 1-9). Leading and trailing spaces and other white space characters such as tabs are not permitted. The underscore character may be used to separate elements in the string, for example "Contoso_4000".

    ImageTimeOnly

    PhoneRadioSoftwareRevision

    This value is specified by the silicon vendor and should not be modified by the OEM. It is used for targeting phone updates.

    This value has the format uint16/string, and can contain a maximum of 15 characters.

    ImageTimeOnly

    PhoneBootLoaderVersion

    Optional. This value is specified by the silicon vendor and should not be modified by the OEM. It is used for targeting phone updates and for Watson reports.

    ImageTimeOnly

    PhoneROMLanguage

    Required. Set the value to a four character Language Code Identifier (LCID), such as "0409" for English (US). For more info, see Available Language Packs for Windows.

    ImageTimeOnly

    PhoneHardwareVariant

    Required. Use to describe the specific hardware configuration used for a particular phone model. The hardware configuration that makes up the PhoneHardwareVariant includes specific hardware parts such as the applications processor, radio (network bands), sensors, memory configuration, and so on. For example, if Contoso (a fictional OEM) produces a popular phone model called Fabrikam 2000 that ships on multiple mobile networks, the phone may come in two hardware variants: "VAR-CDMA", for use on CDMA networks, and "VAR-GSM" for use on GSM networks.

    Use a string value to specify the variant of the OEM's hardware. This setting is mandatory for code signing and registration.

    Note

    OEMs creating a runtime configuration image cannot span across multiple PhoneHardwareVariants.

    FirstVariationOnly

    PhoneMobileOperatorName

    Required. This setting is used for targeting phone updates. It must contain a code specified by Microsoft that corresponds to the mobile operator. These codes are provided in Registry values for mobile operator IDs. For open market phones, in which the mobile operator is not known, use the codes in Registry values for carrier-unlocked phones instead.

    This string is not visible to the user.

    This setting must not be changed over time even if the user switches SIMs or mobile operators, as updates are always targeted based on the first mobile operator associated with the phone.

    The PhoneManufacturer, PhoneManufacturerModelName, and PhoneMobileOperatorName should create a unique Phone-Operator-Pairing (POP). For more info, see Set a Phone-Operator-Pairing (POP).

    FirstVariationOnly

    PhoneManufacturerModelname

    Required. This setting is used for targeting phone updates. It must contain a code that is registered with Microsoft to correspond to the phone model. This string must be unique – if there are any hardware differences between phones that require changes to the BSP, the phones must have different PhoneManufacturerModelName values. This string must not be changed after the phone is sold.

    This string is for OEM reference and can be set to any value that meets the following requirements:

    • The string length must be less than 256 characters

    • The string must be alphanumeric (A-Z, a-z, 1-9)

    • Leading and trailing spaces are not permitted and will cause update failures

    Note

    This string is returned by the DeviceStatus.DeviceName property. For more information, see the SDK Documentation.

    Microsoft recommends using a different value for PhoneManufacturerModelname and another value for PhoneModelName. PhoneManufacturerModelname should be as unique as possible for the particular device revision or variant.

    The PhoneManufacturer, PhoneManufacturerModelName, and PhoneMobileOperatorName should create a unique Phone-Operator-Pairing (POP). For more info, see Set a Phone-Operator-Pairing (POP).

    FirstVariationOnly

    PhoneMobileOperatorDisplayName

    Optional. Defines the friendly name of the Mobile Operator. This string is displayed in the support section of the About screen in Settings and in the ringtone list.

    FirstVariationOnly

    PhoneSupportPhoneNumber

    Optional. Specifies the OEM or mobile operator’s support contact phone number. This string is displayed in the About screen in Settings. This setting also corresponds to the Genuine Windows Phone Certificates (GWPC) support number. This should be a string of numbers. The country code is not required. This setting varies by partner.

    FirstVariationOnly

    PhoneSupportLink

    Optional. Specifies the mobile operator’s support website. The default is an empty string (""), which means that a support link will not be displayed to the user.

    This should be a functional link that starts with http://. The link should be a URL that redirects to the mobile version of the web page. The content in the webpage should reflow to the screen width. This can be achieved by adding the CSS Tag &quot;@-ms-viewport { width: device-width; }"

    This setting varies by mobile operator.

    FirstVariationOnly

    PhoneOEMSupportLink

    Optional. Specifies the OEM’s support website. The default is an empty string (""), which means that a support link will not be displayed to the user.

    This should be a functional link that starts with http://. The link should be a URL that redirects to the mobile version of the web page. The content in the webpage should reflow to the screen width. This can be achieved by adding the CSS Tag &quot;@-ms-viewport { width: device-width; }"

    This setting varies by OEM.

    FirstVariationOnly

    PhoneModelName

    Required. This string is the brand name of the phone and is used for Customer Support and Watson reports. This string is the name marketed to consumers or end users and appears as part of the phone friendly name in multiple places in the phone’s UI including: on the Welcome screen, the About screen in Settings, and on the desktop computer.

    OEMs should ensure that this value matches the value of the ProductString value under the HKEY_LOCAL_MACHINE\CurrentControlSet\Control\USBFN\Default registry key.

    Microsoft recommends that partners consider the following when specifying the value for the PhoneModelName setting:

    • Leave this name blank during development until the phone is ready to enter trials, as applications can collect and read this value.

    • Do not include the manufacturer or OEM name when setting the value for this setting. There are dialogs on the phone that display PhoneManufacturer appended to PhoneModelName so including the OEM or manufacturer’s name when setting PhoneModelName will result in repetitions. For example, if PhoneManufacturer is set to Contoso and PhoneModelName is set to Contoso Phone z102, the result will show up as Contoso Contoso Phone z102.

    • Use a different value for PhoneModelName and another value for PhoneManufacturerModelName. The latter should be as unique as possible for the particular device revision or variant.

    FirstVariationOnly

    RoamingSupportPhoneNumber

    Optional. Specifies the OEM or mobile operator's roaming support contact phone number. This string is displayed in the About screen in Settings.

    For C+G dual SIM phones, OEMs may need to configure this setting. For more information, see Configure C+G dual SIM settings.

Testing Steps:

  1. Flash the build containing this customization to a phone.

  2. Go to the About screen in Settings. Tap on the More Info button.

  3. Verify that the information on this screen matches the values you specified.

Send comments about this topic to Microsoft

© 2017 Microsoft