このトピックでは、WVFile の JavaScript API について説明します。 HTML5 アプリまたはミニアプリを作成する際に、このトピックを参照できます。 WVFile の JavaScript API は、ファイルからコンテンツを読み取る、ファイルにコンテンツを書き込む、ファイルに関する情報を取得する、ファイルをダウンロードする、およびファイルをアップロードする機能を提供します。
WVFile.write
ディスク内の指定されたファイルにコンテンツを書き込みます。
入力パラメーター
[
string
]mode: コンテンツが書き込まれるモード。write
: 新しいファイルにコンテンツを書き込むことを指定します。ファイルが存在しない場合は、ファイルが自動的に作成されます。ファイルが存在する場合は、エラーメッセージerror:FILE_EXIST
が返されます。append
: ファイルの末尾にコンテンツを追加することを指定します。ファイルが存在しない場合は、ファイルが自動的に作成されます。overwrite
: ファイルを上書きすることを指定します。ファイルが存在しない場合は、ファイルが自動的に作成されます。ファイルが存在する場合は、ファイルが上書きされます。
[
string
]data: 書き込まれるコンテンツ。ファイルのパスをWindVane キャッシュファイルのパス/ファイル名
の形式で指定します。パスが存在しない場合は、パスが自動的に作成されます。[
string
]fileName: ファイルの名前。ファイルが存在しない場合は、ファイルが自動的に作成されます。ファイル名にスラッシュ(/)を含めることはできません。[
string
]share: ファイルを共有するかどうかを指定します。
コールバックパラメーター
コールバックパラメーターはコールバックメソッドに渡されます。コンテンツがファイルに書き込まれた場合は、success
コールバックが呼び出されます。それ以外の場合は、failure
コールバックが呼び出されます。
var params = {
mode: 'overwrite',
data: 'Hello World!!!\n',
fileName: 'testFile.txt',
share: 'false'
};
function writeFile () {
window.WindVane.call('WVFile', 'write', params, function(e) {
alert('success: ' + JSON.stringify(e));
}, function(e) {
alert('failure: ' + JSON.stringify(e));
});
}
WVFile.read
指定されたファイルのコンテンツを読み取ります。
入力パラメーター
[
string
]fileName: 読み取られるファイルの名前。ファイル名にスラッシュ(/)を含めることはできません。ファイルのパスをWindVane キャッシュファイルのパス/ファイル名
の形式で指定します。パスが存在しない場合は、エラーメッセージerror:PATH_NOT_FOUND
が返されます。ファイルが存在しない場合は、エラーメッセージerror:FILE_NOT_FOUND
が返されます。
コールバックパラメーター
コールバックパラメーターはコールバックメソッドに渡されます。ファイルが読み取られた場合は、success
コールバックが呼び出されます。それ以外の場合は、failure
コールバックが呼び出されます。
[
string
]data: 指定されたファイルのコンテンツ。
var params = {
fileName: 'testFile.txt',
share: 'false'
};
function readFile () {
window.WindVane.call('WVFile', 'read', params, function(e) {
success(JSON.stringify(e));
}, function(e) {
failure(JSON.stringify(e));
});
}
WVFile.getFileInfo
この API は、WindVane Android 1.0.X.X 以降、WindVane iOS 2.1.4 以降でのみ使用できます。
ファイルに関する情報を取得します。
入力パラメーター
[
string
]filePath: ファイルのパス。
コールバックパラメーター
成功コールバックのパラメーター:
[
string
]fileSize: ファイルのサイズ。
失敗コールバックのパラメーター:
[
string
]msg: エラーメッセージ。
ファイル情報が取得された場合は、success
コールバックが呼び出されます。それ以外の場合は、failure
コールバックが呼び出されます。
var params = {
filePath: '/storage/emulated/0/Android/data/xxx/testFile.txt',
};
function readFile () {
window.WindVane.call('WVFile', 'getFileInfo', params, function(e) {
success(JSON.stringify(e));
}, function(e) {
failure(JSON.stringify(e));
});
}
WVFile.downloadFile
この API は、WindVane Android 1.0.X.X 以降、WindVane iOS 2.1.4 以降でのみ使用できます。
指定された URL からファイルをダウンロードします。
入力パラメーター
[
string
]url: ファイルのダウンロード URL。[
string
]name: ファイルがダウンロードされた後のファイルの名前。デフォルト名は timestamp_windvane です。ダウンロードごとに名前を指定することをお勧めします。このパラメーターはオプションです。
コールバックパラメーター
成功コールバックのパラメーター:
[
string
]filePath: ファイルがダウンロードされた後のファイルのローカルストレージパス。
失敗コールバックのパラメーター:
[
string
]msg: エラーメッセージ。
イベントリスニング
WVFile.Event.downloadFileSuccess
ファイルがダウンロードされました。
イベントパラメーター:
[
string
]filePath: ファイルがダウンロードされた後のファイルのローカルストレージパス。
WVFile.Event.downloadFileFailed
ファイルのダウンロードに失敗しました。
[
string
]msg: エラーメッセージ。
document.addEventListener('WVFile.Event.downloadFileSuccess', function (e) {
alert('event downloadFileSuccess: ' + JSON.stringify(e.param));
});
document.addEventListener('WVFile.Event.downloadFileFailed', function (e) {
alert('event downloadFileFailed: ' + JSON.stringify(e.param));
});
var params = {
url: 'http://xxxx',
name: 'test.mp4'
};
window.WindVane.call('WVFile', 'downloadFile', params, function(e) {
alert('downloadFile success: ' + JSON.stringify(e));
}, function(e) {
alert('downloadFile failure: ' + JSON.stringify(e));
});
WVFile.uploadFile
この API は、WindVane Android 1.0.X.X 以降、WindVane iOS 2.1.4 以降でのみ使用できます。
指定されたサーバー URL にファイルをアップロードします。
入力パラメーター
[
string
]url: ファイルのアップロード URL。[
string
]filePath: アップロードされるローカルファイルのストレージパス。アプリにこのパスのファイルに対する読み取り権限があることを確認してください。アプリにそのような権限がない場合、ファイルはアップロードされません。[
int
]timeout: タイムアウト期間。デフォルト値: 6 。単位: 秒。このパラメーターはオプションです。[
object
]headers: アップロードリクエストのヘッダー。
コールバックパラメーター
成功コールバックのパラメーター:
[
string
]data: ファイルがアップロードされた後にサーバーから返されるデータ。[
string
]headers: ファイルがアップロードされた後にサーバーから返されるヘッダー。
失敗コールバックのパラメーター:
[
string
]msg: エラーメッセージ。アップロードプロセス中にエラーが発生した場合、msg の値は次の情報を含む JSON 文字列です:[
int
]code: HTTP ステータスコード。[
string
]data: サーバーから返されるデータ。[
string
]headers: サーバーから返されるヘッダー。
イベントリスニング
WVFile.Event.uploadFileSuccess
ファイルがアップロードされました。
イベントパラメーター:
[
string
]data: ファイルがアップロードされた後にサーバーから返されるデータ。[
string
]headers: ファイルがアップロードされた後にサーバーから返されるヘッダー。
WVFile.Event.uploadFileFailed
ファイルのアップロードに失敗しました。
[
string
]msg: エラーメッセージ。アップロードプロセス中にエラーが発生した場合、msg の値は次の情報を含む JSON 文字列です:[
int
]code: HTTP ステータスコード。[
string
]data: サーバーから返されるデータ。[
string
]headers: サーバーから返されるヘッダー。
document.addEventListener('WVFile.Event.uploadFileSuccess', function (e) {
alert('event uploadFileSuccess: ' + JSON.stringify(e.param));
});
document.addEventListener('WVFile.Event.uploadFileFailed', function (e) {
alert('event uploadFileFailed: ' + JSON.stringify(e.param));
});
var params = {
url: 'http://xxxx',
filePath: '/storage/test.txt',
timeout: 8000,
headers: {
xxx: 'xxx'
}
};
window.WindVane.call('WVFile', 'uploadFile', params, function(e) {
alert('uploadFile success: ' + JSON.stringify(e));
}, function(e) {
alert('uploadFile failure: ' + JSON.stringify(e));
});
WVFile.choseFiles
この API は、以下のバージョンでのみ有効です。
Android: windvane-mini-app >= 1.6.6, mini-app-adapter >= 1.5.8
iOS: EMASWindVaneMiniApp >= 1.0.9
ローカルファイルを選択してアップロードします。
入力パラメーター
なし
コールバックパラメーター
成功コールバックパラメーター:
名前 | タイプ | 必須 | 値の例 | 説明 |
base64Data | string | はい | iVBORw0KGgoAAAANSUhEUgAAAAUA.. | ファイル base64 データ |
失敗コールバックパラメーター:
名前 | タイプ | 必須 | 値の例 | 説明 |
msg | string | はい | 失敗理由 |
コード例:
window.WindVane.call(
'WVFile',
'chooseFiles',
{},
function(response) {
const files = response.files;
alert("open success: " + JSON.stringify(files));
}, function(e) {
alert("open fail: " + JSON.stringify(e));
}
);
WVFile.getDataByFilePath
この API は、以下のバージョンでのみ有効です。
Android: windvane-mini-app >= 1.6.6, mini-app-adapter >= 1.5.8
iOS: EMASWindVaneMiniApp >= 1.0.9
ローカルファイルデータを取得します。
入力パラメーター
名前 | タイプ | 必須 | 値の例 | 説明 |
path | string | /download/dingding/0/1.png | ローカルファイルパス |
コールバックパラメーター
成功コールバックパラメーター:
名前 | タイプ | 必須 | 値の例 | 説明 |
base64Data | string | はい | iVBORw0KGgoAAAANSUhEUgAAAAUA.. | ファイル base64 データ |
失敗コールバックパラメーター:
名前 | タイプ | 必須 | 値の例 | 説明 |
msg | string | はい | 失敗理由 |
コード例:
window.WindVane.call('WVFile', 'getDataByFilePath', { path: '/download/dingding/0/1.png' }, function(data) {
const base64Data = data.base64Data;
alert('getDataByFilePath success: ' + JSON.stringify(data.base64Data));
// ファイル保存のためにバックエンド サービスにファイルを送信するロジックを実装します
...
...
}, function(error) {
alert('getDataByFilePath failure: ' + JSON.stringify(error));
});