すべてのプロダクト
Search
ドキュメントセンター

SuperApp:ファイル

最終更新日:Jan 18, 2025

このトピックでは、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));
});