Oracle JETハイブリッド・モバイル・アプリケーションの一般的な問題のトラブルシューティング
Oracle JETを使用してハイブリッド・モバイル・アプリケーションをデプロイする場合、最も一般的な問題は、実行時例外、構成ミスおよびネットワーキングの問題が原因である可能性があります。
問題1: 失敗したojetビルド
企業のファイアウォールの内側で作業する場合、 ojet build
またはojet0- serve
コマンドを発行した後にビルドが失敗したことを示すメッセージを受信することがあります。
企業のファイアウォールの内側にある場合は、npmプロキシ設定が正しく構成されていることを確認してください。
問題2: モバイルOSエミュレータでハイブリッド・モバイル・アプリケーションを起動できない
ハイブリッド・モバイル・アプリケーションを正常に構築できますが、後でモバイルOSエミュレータでテストできないことがわかります。
たとえば、コンソールログには、アプリケーションが永続的な「待機中」状態でハングしていることが示されることがあります。
Running "serve" task
Running "customServe" task
Invoking cordova serve
Static file server running on: http://localhost:8090 (CTRL + C to shut down)Invoking cordova run
Starting watch
Running "watch" task
Waiting...
この問題は、エミュレータを起動する前にojet serve
コマンドを実行する場合に共通です。ojet
がエミュレータの起動を試行しても、エミュレータの起動中に一部のコマンドが実行されない場合があります。この問題を解決するには:
-
常に最初にエミュレータを起動します。
-
ojet serve
コマンドの宛先パラメータを指定しないでください。アプリケーションは、オープン/デフォルト・エミュレータにデプロイされます。 -
エミュレータが起動したら、
ojet serve
コマンドを実行します。 -
ojet serve
コマンドの前にojet build
が実行されていることを確認します。
問題3: デバッグ中のCORS問題への実行
アプリケーションがOracle Mobile Hubなどのモバイル・ミドルウェアに接続したり、エミュレータのライブ・デバッガの使用中に認証を実行できない場合があります。
これを回避するには、ojet
--no-livereloadパラメータを使用して、アプリケーションのデプロイ時にライブ・リロード機能を無効にします。
ojet serve --platform=android --no-livereload=true
問題4: LiveReloadが物理デバイスで機能しない
LiveReloadが有効になっているデバイスに対応できないことは既知の問題です。
この問題を回避するには、--browser
フラグを使用してブラウザ内でアプリケーション・コンテンツを開発します。
ojet serve android --browser
次に、エミュレータでLiveReloadを使用します。このプロセスは、実際のデバイスよりもエミュレータでは遅いことに注意してください。
ojet serve
物理デバイスを使用してテストするには、LiveReloadを無効にする必要があります。
ojet serve android --device --no-livereload
ノート:
ojet serve
コマンドで使用可能なすべてのオプションのリストを表示するには、ojet help serve
と入力します。