Windows マシンで開発し、変更を直接更新によって iPad (iOS 7.1.2) テスト デバイスにプッシュしたいと考えています。これは WL 6.1 ではうまくいきましたが、WL 6.2 への更新以降、いくつかの問題が発生しています。次のシナリオでは、私の問題について説明します。
- 新しい WL プロジェクトを作成し、iPad を環境として追加します
- application-descriptor.xml で worklightSettings を有効にしました
- 以下のコード スニペットを main.js に追加します。
- Worklight Development Server で実行
- Eclipse を介して Xcode でプロジェクトを開く
- Xcode でプロジェクトをクリーンアップし、iPad で実行する
- 変更を加えて再デプロイし、ダイレクト アップデートが受信されていることを確認する
- プロジェクトを Windows マシンにコピーし、Eclipse で開きます
- Windows マシン上の Worklight Development Server で実行
- Settings.app からアプリの設定を開き、カスタム サーバー URL の使用を有効にします。
- Mac の IP を Windows マシンの IP に置き換えます。
- Windows の場合: 変更を加えて再デプロイする
- iPadでアプリを再起動する
アプリを再起動するとすぐに、Windows マシンの In the worklight 開発サーバー コンソールで次の例外が発生します。
[WARNING ] SRVE0190E: File not found: //apps/services/api/HelloDirectUpdate/ipad/init
[ERROR ] FWLSE0048E: Unhandled exception caught: SRVE0190E: File not found: //apps/services/api/HelloDirectUpdate/ipad/init
カスタム サーバー URL を変更して最後のスラッシュを削除すると、更新が利用可能であるというメッセージが表示されます。しかし、更新をクリックしても、ダウンロード ポップアップのプログレス バーが動きません。Windows マシンと MAC の両方に、次の WL Studio バージョンがあります: platformVersion="6.2.0.00.20140724-2139"。私は何を間違っていますか?
main.js
function wlCommonInit(){
WL.Client.connect({
onSuccess: onConnectSuccess,
onFailure: onConnectFailure
});
}
function onConnectSuccess() {
WL.Logger.debug("Connect success.");
}
function onConnectFailure() {
WL.Logger.debug("Connect failed.");
}