クラウドとの間でテキストファイルを開いたり保存したりするためにインクファイルピッカーを使用する webapp をプログラムします。モバイルブラウザで、次の方法でファイルを開くと:
filepicker.pick({extension: '.txt'},
function(FPFile) {
filepicker.read(FPFile, function(data) {
// Open file
});
});
ブラウザで「ポップアップをブロックする」オプションが有効になっているかどうかに関係なく、問題はありません。しかし、次の方法でファイルを保存すると:
filepicker.store(
mycontent64,
{base64decode: true, mimetype: 'text/plain'},
function(InkBlob) {
filepicker.exportFile(
InkBlob,
{suggestedFilename:"myfile.txt",extension: ".txt"},
function(InkBlob) {
// ******* Save file
},
function(FPError) {
console.log(FPError.toString());
});
},
function(FPError) {
console.log(FPError.toString());
}
);
ブラウザで「ブロックポップアップ」オプションが無効になっている場合にのみ機能します(iPadまたはAndroidストックブラウザのSafari、またはGoogle Chrome Android ...)。アクティブ化されている場合、ブラウザは新しいタブでエクスポートダイアログを開くことを拒否し、コンソールに「FPError 131」が表示されます...
ユーザーにこのオプションを無効にするように指示することはできません。
トリックを行う回避策はありますか?
ありがとう !