2015-11-04 1 views
1

J'ai développé une application Chrome qui fonctionne parfaitement sous Linux, Windows et OSX. Sauf pour une petite chose:Application Chrome API fileSystem: Le nom de fichier suggéré n'a pas d'extension dans OSX

Sous OSX, le nom de fichier suggéré n'a pas d'extension. Lorsque le fichier est enregistré, l'extension est omise et le fichier ne peut être ouvert que si l'utilisateur ajoute manuellement l'extension.

J'utilise le code comme ceci:

var config = { 
    type: 'saveFile', 
    suggestedName: "test.srt" 
}; 
chrome.fileSystem.chooseEntry(config, function(writableEntry) { 
    if(chrome.runtime.lastError) { 
     console.warn(chrome.runtime.lastError.message); 
    } 
    else if (writableEntry) { 
     var blob = new Blob([subtitles], {type: "text/srt"}) 
     writeFileEntry(writableEntry, blob, false, function(e) { 
      console.log("Subtitles saved", writableEntry.fullPath); 
     }) 
    } 
}); 

Est-ce juste la façon dont il est dans OSX ou puis-je changer quoi que ce soit pour le faire fonctionner?

Répondre

1

Il est un bug Chrome/Chrome: crbug issue 439857 (fixé le 16 déc 2015, Chrome 49).

En ce qui concerne maintenant essayer de doubler l'extension sur Mac OS X: test.srt.srt

+0

Eh bien, c'est une solution brute que le fichier se termine par la double extension qui ressemble un peu bizarre. Mais au moins, il est reconnu lors d'un double-clic, etc. Une solution un peu mieux est d'utiliser un double point, test..srt. Mais en espérant toujours une vraie solution! – marlar

+0

La vraie solution serait de soumettre un correctif dans le code source de Chromium. – wOxxOm

+0

Je suis d'accord. Malheureusement, cela dépasse ma portée. – marlar