2016-08-05 18 views
0

InAppBrowserにアプリケーションからブラウザウィンドウを起動させようとしています。 Visual Studioから起動しているAndroidエミュレータでコードを使用しようとすると、ブラウザが期待通りに起動しますが、Androidデバイスにapk(Adobe PhoneGapビルドを使用して構築)をインストールすると、ボタンが押されて何も起こりません。イベントが実際にデバイス上の警告()によって実行されていることを確認しましたが、ブラウザは開いていません。何か案は?Cordova:InAppBrowserはアンドロイドデバイスで動作していますが、アンドロイドデバイスでは動作しません

HTML:

<div class="app"> 
     <div> 
      <input type="button" id="launch" value="Launch browser to www.google.com!"/> 
     </div> 
    </div> 

JS:私は、エラーをtry文を使用して取得し、私の呼び出しをラップしようとした

(function() { 
    "use strict"; 

    document.addEventListener('deviceready', onDeviceReady.bind(this), false); 

    function onDeviceReady() { 
     // Handle the Cordova pause and resume events 
     document.addEventListener('pause', onPause.bind(this), false); 
     document.addEventListener('resume', onResume.bind(this), false); 
     document.querySelector('input#launch').addEventListener('click', launchGoogle); 
    }; 

    function onPause() { 
     // TODO: This application has been suspended. Save application state here. 
    }; 

    function onResume() { 
     // TODO: This application has been reactivated. Restore application state here. 
    }; 
})(); 

function launchGoogle() { 
    alert("launchGoogle()"); 
    cordova.InAppBrowser.open("http://www.google.com", "_blank", "location=yes"); 
} 

"は未定義の方法 'オープン' を呼び出すことはできません"。これは、InAppBrowserプラグインがインストールされていないことを意味します。

+0

ホワイトリストの設定はありますか? – Mark

+2

@ J.Polferプラグイン呼び出しコードを持つlaunchGoogle関数は、onDeviceReady関数内に配置する必要があります。ここでは簡単なサンプルアプリケーションをチェックすることができます - https://github.com/gandhirajan/Cordova_InAppBrowserまた、 config.xmlに適切なアクセス許可が設定されています – Gandhi

+0

@Ghandi - try文を使用して呼び出しをラップし、「未定義のopenメソッドを呼び出せません」というエラーが発生しました。これは、InAppBrowserプラグインがインストールされていないことを意味します。 –

答えて

1

プラグインがロードされていないという問題が発生しました。理由:プラグインがダウンロードされていませんでした。

PhoneGap Buildによってプラグインがダウンロードされていないことが分かります。理由:PhoneGapビルドには、Visual Studioが元々持っていたルートプロジェクトディレクトリではなく、www /ディレクトリにconfig.xmlが必要です。

config.xmlファイルをwww /ディレクトリにコピーすると問題が解決しました。

関連する問題