CordovaWebViewClientをチェックすると、Cordovaによってすぐに処理されるいくつかのURIがあります。
プラグインで遊びたくない場合は、プラグインをオーバーライドして、さまざまなカスタムタイプのURIのサポートを追加できます。これにより、URIで指定されたパラメーターを使用して、選択したアプリケーションをランチできます。
public class CustomWebViewClient extends
org.apache.cordova.CordovaWebViewClient {
public CustomWebViewClient(DroidGap ctx) {
super(ctx);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
//Check if provided uri is interesting for us
if (url.startsWith("customUri://")) {
//Get uri params, create intent and start the activity
return true;
}
return super.shouldOverrideUrlLoading(view, url);
}
}
上記のクラスは、Androidプロジェクトのメインアクティビティ(DroidGapを拡張する)で使用する必要があります。
@Override
public void init() {
WebView webView = new WebView(this);
CustomWebViewClient webClient = new CustomWebViewClient(this);
CordovaChromeClient chromeClient = new CordovaChromeClient(this);
super.init(webView, webClient, chromeClient);
}
あなたが言及したプラグインは、指定されたURIに基づいてインテントをランチすることを可能にします。したがって、たとえば、http://で始まるURIを提供すると、AndroidはそれをWebリソースとして認識し、使用可能なブラウザを起動しようとします。したがって、ブラウザを起動したいだけなら、それで十分です。