2016-06-29 22 views
3

私のCordovaアプリケーションからGoogle Chrome(別のブラウザではない)を使用してリンクを開きたいとします。私はいくつかの解決策を試みましたが、何も機能しませCordova:Google Chromeを使用してリンクを開く

最初に、googlechrome://(HTML <a>タグを使用)へのリンクを作成しようとしました。 Google Chromeを開きますが、開くURLを選択することはできません。

次に、intent://my.url.com/#Intent;scheme=https;package=com.android.chrome;endへのリンクを作成しようとしました。このリンクはブラウザ(FirefoxやGoogle Chromeなど)から開くと機能しますが、Cordovaアプリから開くと機能しません。

window.plugins.webintent.startActivity(
    { 
     action: window.plugins.webintent.ACTION_VIEW, 
     url: 'intent://my.url.com/#Intent;scheme=https;package=com.android.chrome;end' 
    }, 
    function() { 
     alert(url); 
    }, 
    function(){ 
     alert('Failed to open URL via Android Intent'); 
    } 
); 

しかし、私は「アンドロイド経由でURLを開くことができませんでしたテント」エラーが表示されます。

は、私もそのように、 cordova-webintentプラグインを使用しようとしました。

どうすればよいですか?

PS:私のconfig.xmlファイルに<allow-intent href="*" />を書きました。

答えて

1

最終的に解決策が見つかりました。私はちょうどこのようなリンクを作成する必要がありました:

<a href="googlechrome://navigate?url=https://my.url.com/"></a>

1

あなたはターゲットとして_systemcordova-plugin-inappbrowserを使用することができます。

cordova.InAppBrowser.open('http://stackoverflow.com', '_system', 'location=yes'); 

それとも、このように、(これは、あなたが使用しているのと同じであるかどうかを知りません)cordova-plugin-webintent2を使用することができます。

window.plugins.webintent.startActivity({ 
     action: window.plugins.webintent.ACTION_VIEW, 
     url: "googlechrome://navigate?url=http://www.stackoverflow.com" 
    }, 
    function() {}, 
    function() { 
     alert('Failed to open URL via Android Intent.'); 
     console.log("Failed to open URL via Android Intent.") 
    }); 

URLはhttpまたはhttpsで始まり、相対URLは許可されません。

+0

は、あなたの答えをいただき、ありがとうございます。最初の解決法は機能しません。なぜなら、ブラウザにどのブラウザを選択するかを尋ねるからです。それは私が望むものではありません。しかし、あなたが投稿したスニペットは、文書化されていない 'googlechrome:// 'URLスキームを理解するのに役立ちました。私はそれを使った簡単な解決策を見つけました(私の答えを見てください)。ありがとう! – Nicolapps

+0

あなたは私に多くの答えを見つけるのを助けたので私はあなたに賞金をくれました:) – Nicolapps

関連する問題