A classe WVFile fornece JSAPIs para operações com arquivos em aplicações H5 e mini programs, incluindo escrita, leitura, obtenção de informações, download, upload e seleção de arquivos.
WVFile.write
Grava conteúdo em um arquivo no disco.
Parâmetros
-
[
string] mode: Modo de gravação do arquivo.write: Grava no arquivo. Se o arquivo não existir, o WindVane o cria. Caso já exista, o WindVane retornaerror:FILE_EXIST.append: Adiciona conteúdo ao final do arquivo. O WindVane cria o arquivo caso ele não exista.overwrite: Sobrescreve o arquivo. Se não existir, o WindVane o cria; se já existir, substitui o conteúdo atual.
[
string] data: Conteúdo a gravar. O arquivo fica armazenado emWindVane cache file path/fileName. O sistema cria caminhos inexistentes automaticamente.[
string] fileName: Nome do arquivo. Não pode conter "/". O sistema o cria automaticamente se ainda não existir.[
string] share: Indica se o arquivo pode ser compartilhado.
Parâmetros de callback
O callback success é invocado quando a gravação ocorre com êxito. Caso contrário, o sistema chama o callback 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
Lê o conteúdo de um arquivo especificado.
Parâmetros
[
string] fileName: Arquivo a ler. Não pode conter "/". O arquivo reside emWindVane cache file path/fileName. Se o caminho não existir, o WindVane retornaerror:PATH_NOT_FOUND. Quando o arquivo não existe, o retorno éerror:FILE_NOT_FOUND.
Parâmetros de callback
Em caso de leitura bem-sucedida, o callback success é acionado. Se houver falha, o callback failure será executado.
[
string] data: Conteúdo lido do arquivo.
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
Esta API está disponível apenas no WindVane para Android 1.0.3.4 ou superior.
Obtém informações sobre um arquivo.
Parâmetros
[
string] filePath: Caminho do arquivo.
Parâmetros de callback
Parâmetros do callback de sucesso:
[
string] fileSize: Tamanho do arquivo.
Parâmetros do callback de falha:
[
string] msg: Mensagem de erro.
Se as informações forem obtidas corretamente, o callback success é disparado. Em situações de erro, o callback failure assume o fluxo.
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
Esta API está disponível apenas no WindVane para Android 1.0.3.4 ou superior.
Baixa um arquivo de uma URL específica.
Parâmetros
[
string] url: URL do arquivo para download.[
string] name: Opcional. Nome do arquivo baixado. O padrão é "timestamp_windvane". Recomenda-se definir um nome distinto para cada download.
Parâmetros de callback
Parâmetros do callback de sucesso:
[
string] filePath: Caminho local do arquivo baixado.
Parâmetros do callback de falha:
[
string] msg: Mensagem de erro.
Listeners de eventos
WVFile.Event.downloadFileSuccess
Disparado quando o download do arquivo é concluído com sucesso.
Parâmetros do evento:
[
string] filePath: Caminho local do arquivo baixado.
WVFile.Event.downloadFileFailed
Acionado quando ocorre falha no download do arquivo.
[
string] msg: Mensagem de erro.
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
Esta API está disponível apenas no WindVane para Android 1.0.3.4 ou superior.
Envia um arquivo para uma URL de servidor especificada.
Parâmetros
[
string] url: URL do servidor de destino para o upload.[
string] filePath: Caminho local do arquivo a enviar. Requer permissão de leitura; sem ela, o upload falha.[
int] timeout: Opcional. Tempo limite em milissegundos. O valor padrão é 6000.[
object] headers: Opcional. Cabeçalhos da requisição de upload.
Parâmetros de callback
Parâmetros do callback de sucesso:
[
string] data: Dados retornados pelo servidor após o upload bem-sucedido.[
string] headers: Cabeçalhos retornados pelo servidor após o upload bem-sucedido.
Parâmetros do callback de falha:
-
[
string] msg: Mensagem de erro. Se ocorrer uma falha durante o upload, este parâmetro será uma string JSON contendo os seguintes campos:[
int] code: Código de status HTTP.[
string] data: Dados retornados pelo servidor.[
string] headers: Cabeçalhos retornados pelo servidor.
Listeners de eventos
WVFile.Event.uploadFileSuccess
Disparado quando o upload do arquivo é concluído com sucesso.
Parâmetros do evento:
[
string] data: Dados retornados pelo servidor após o upload bem-sucedido.[
string] headers: Cabeçalhos retornados pelo servidor após o upload bem-sucedido.
WVFile.Event.uploadFileFailed
Acionado quando ocorre falha no upload do arquivo.
-
[
string] msg: Mensagem de erro. Se ocorrer uma falha durante o upload, este parâmetro será uma string JSON contendo os seguintes campos:[
int] code: Código de status HTTP.[
string] data: Dados retornados pelo servidor.[
string] headers: Cabeçalhos retornados pelo servidor.
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.chooseFiles
Esta API está disponível apenas nas seguintes versões.
Android: windvane-mini-app 1.6.6 ou superior, mini-app-adapter 1.5.8 ou superior.
iOS: EMASWindVaneMiniApp 1.0.9 ou superior.
Abre um seletor para escolher arquivos locais.
Parâmetros
Nenhum
Parâmetros de callback
Parâmetros do callback de sucesso:
O callback de sucesso retorna um objeto com estas propriedades:
|
Parâmetro |
Tipo |
Obrigatório |
Valor de exemplo |
Descrição |
|
files |
array |
Sim |
Array de objetos em que cada item representa um arquivo selecionado. |
Cada objeto no array files possui as seguintes propriedades:
|
Parâmetro |
Tipo |
Obrigatório |
Valor de exemplo |
Descrição |
|
path |
string |
Sim |
Caminho local do arquivo selecionado. |
Parâmetros do callback de falha:
|
Parâmetro |
Tipo |
Obrigatório |
Valor de exemplo |
Descrição |
|
msg |
string |
Sim |
Motivo da falha. |
Exemplo:
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
Esta API está disponível apenas nas seguintes versões.
Android: windvane-mini-app 1.6.6 ou superior, mini-app-adapter 1.5.8 ou superior.
iOS: EMASWindVaneMiniApp 1.0.9 ou superior.
Recupera os dados codificados em Base64 de um arquivo local.
Parâmetros
|
Parâmetro |
Tipo |
Obrigatório |
Valor de exemplo |
Descrição |
|
path |
string |
Sim |
/download/dingding/0/1.png |
Caminho do arquivo local. |
Parâmetros de callback
Parâmetros do callback de sucesso:
|
Parâmetro |
Tipo |
Obrigatório |
Valor de exemplo |
Descrição |
|
base64Data |
string |
Sim |
iVBORw0KGgoAAAANSUhEUgAAAAUA.. |
Dados do arquivo codificados em Base64. |
Parâmetros do callback de falha:
|
Parâmetro |
Tipo |
Obrigatório |
Valor de exemplo |
Descrição |
|
msg |
string |
Sim |
Motivo da falha. |
Exemplo:
window.WindVane.call('WVFile', 'getDataByFilePath', { path: '/download/dingding/0/1.png' }, function(data) {
const base64Data = data.base64Data;
alert('getDataByFilePath success: ' + JSON.stringify(data.base64Data));
// Implement your own logic to send the formData to your backend service to save the file.
...
...
}, function(error) {
alert('getDataByFilePath failure: ' + JSON.stringify(error));
});