Ajout à la réponse de Evertson:
Pour éviter d'avoir à maintenir la plate-forme d'édition/fichiers Windows, vous pouvez copier package.windows10.appxmanifest à la résolution/dossier natif/Windows. Le code devrait ressembler à ceci:
<uap:DefaultTile ShortName="..." Square310x310Logo="..." etc.>
<uap:ShowNameOnTiles>
<uap:ShowOn Tile="square310x310Logo" />
<uap:ShowOn Tile="square150x150Logo" />
<uap:ShowOn Tile="wide310x150Logo" />
</uap:ShowNameOnTiles>
</uap:DefaultTile>
Bien sûr, cela signifie que vous devez modifier le manifeste chaque fois que vous apportez des modifications de configuration. Il est intéressant de noter que l'ancien manifeste Windows 8.1 (package.windows.appxmanifest) et le manifeste Windows 8.1 (package.phone.appxmanifestfile) incluent déjà cette information par défaut. Aucune idée pourquoi il a été enlevé pour les fenêtres 10.
Modifier
Vous pouvez créer un crochet pour insérer le code XML de sorte que vous n'avez pas à vous soucier d'appliquer les modifications à config.xml:
Ajoutez ce qui suit: hooks/showNameOnTiles.js
module.exports = function (context) {
"use strict";
var fs = require('fs'),
path = context.opts.projectRoot + '/platforms/windows/package.windows10.appxmanifest',
manifest = fs.readFileSync(path).toString(),
lines, i, lineNo;
if (!manifest.includes('uap:ShowNameOnTiles')) {
lines = manifest.split(/\r?\n/);
for (i = 0; i < lines.length; i++) {
if (lines[i].indexOf('uap:DefaultTile') !== -1) {
lineNo = i;
break;
}
}
if (lineNo) {
lines[lineNo] = lines[lineNo].replace('/>', '>').replace(' >', '>');
lines.splice(lineNo + 1, 0, [
'<uap:ShowNameOnTiles>',
'<uap:ShowOn Tile="square310x310Logo" />',
'<uap:ShowOn Tile="square150x150Logo" />',
'<uap:ShowOn Tile="wide310x150Logo" />',
'</uap:ShowNameOnTiles>'
].join('\n'));
lines.splice(lineNo + 2, 0, '</uap:DefaultTile>');
fs.writeFileSync(path, lines.join('\n'));
}
}
};
En config.xml, ajouter:
<platform name="windows">
<hook type="after_prepare" src="hooks/showNameOnTiles.js" />
</platform>
Une façon plus simple
Il y a une façon plus simple de faire cela, mais je ne pouvais pas le faire fonctionner; vous pouvez créer votre propre plugin:
<?xml version="1.0" encoding="UTF-8"?>
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
id="com.blah.addtiletitleplugin" version="1.0.0">
<name>Adds the title to windows 10 tiles</name>
<description>Adds the title to windows 10 tiles</description>
<platform name="windows">
<config-file target="package.windows10.appxmanifest" parent="/Package/Applications/Application/uap:VisualElements/uap:DefaultTile/">
<uap:ShowNameOnTiles>
<uap:ShowOn Tile="square310x310Logo" />
<uap:ShowOn Tile="square150x150Logo" />
<uap:ShowOn Tile="wide310x150Logo" />
</uap:ShowNameOnTiles>
</config-file>
</platform>
</plugin>
Cependant, quand je tente d'ajouter le plug-in, visual studio refuse de l'analyser, même si je l'ai spécifié:
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
Si je supprime le UAP : parties, il analyse et ajoute mais, bien sûr, échoue sur la construction.
J'ai rencontré le même problème d'analyse de Visual Studio avec l'approche du plug-in. J'ai réussi à le faire fonctionner en 1) en commentant le bloc '', 2) en installant le plugin, 3) sans commenter le bloc '', 4) enlever et réinstaller le plugin. L'astuce consistait à garder l'onglet Plugins/Custom affiché pendant tout le processus. J'ai également dû supprimer le dossier platform/windows et reconstruire l'application. –