3

Cordova File、Cordova FileTransfer、Cordova Device API を使用してファイルをダウンロードしていましたが、Windows XDK アプリ内でそれらをすべてチェックしましたが、cordova.filecordova crosswalk ビルド内では定義されていません。Cordova Windows ビルド (cmd を使用) で同じバージョンと同じコードを使用しています。

インテル XDK バージョン 1621

org.apache.cordova.file: 1.3.2

本文の最後にある私のhtml:

<script src="./cordova.js"></script>
<script src="./intelxdk.js"></script>
<script>
function onDeviceReady() {
   console.log(cordova.file);
   alert(cordova.file);
}
document.addEventListener("deviceready", onDeviceReady, false);
</script> 

取得する他の解決策はありますcordova.file.dataDirectoryか?

または、それを管理する別のリリースを待つことができますか?

4

2 に答える 2

3

参考までに:

org.apache.cordova.fileXDK(1621) で使用されているバージョンは 1.1.0 であり、それがないcordova.fileため、XDK のファイル プラグインのバージョンを 1.3.2 に変更しましたが、エミュレーターまたはデバッガー(XDK Crosswalk アプリを使用) を使用してから結果はありません

この方法を使用してファイルプラグインが含まれていると確信しています:

JSON.stringify(cordova.require('cordova/plugin_list').metadata, null, 1)

ただし、エミュレーターとデバッガーはバージョン 1.1.0 を使用し続けます

次に、XDK のBUILDページからビルドすると、バージョン 1.3.2 を使用して動作し、表示されます。問題が解決しました。

投稿する前にそれを試していなかったのは残念ですが、私の防衛施設では毎回ダウンロードしてからデバイスにインストールするのに時間がかかり、各テストに 20 分もかかり、あまり論理的ではありません。

エミュレーターのプラグインを更新する

エミュレーターでプラグインのデフォルト バージョンを使用している XDK を見つけたとき、Windows の XDK フォルダーでプラグインを手動で更新することにしました。

%LOCALAPPDATA%\Intel\XDK\xdk\components\server\cordova-plugins

org.apache.cordova.fileフォルダーを削除し、新しいクローンを取得して、更新されたバージョンのエミュレーターhttps://github.com/apache/cordova-plugin-fileでテストを作成しました。

Intel App Preview で更新されたプラグインを使用する (他のタブで問題が発生する可能性があります)

Windows のこのフォルダーにあるプラグインを更新するだけです。

%LOCALAPPDATA%\Intel\XDK\xdk\brackets\b\extensions\default\StaticServer\node\node_modules\cp\res\middleware\cordova\intel-app-preview\android\plugins

デバッガーは、更新されたプラグインでうまく機能します。


更新を簡単にする

各フォルダーで次のように git からクローンします。

フォルダ内org.apache.cordova.file

git init && git remote add origin https://github.com/apache/cordova-plugin-file.git && git pull

これで、すべてのバージョンが git にあります。

すべてのプラグインを更新するには、プラグインのルート ディレクトリで次の bash コマンドを実行します: (Windows では Git Bash を使用)

for i in $(find $PWD -maxdepth 1 -type d); do echo $i && cd $i && git pull; done
于 2015-01-06T05:30:44.710 に答える
0

プラグインが追加されたことを確認しますか? もう一度ビルドして、ビルド ログを確認してください。プラグインの追加を妨げたビルド中のエラーのようです。

于 2015-01-05T14:15:08.223 に答える