A quanto pare, su android si verifica lo stesso problema riscontrato su iOS, che non permette le richieste ajax su https con certificati self signed.

La soluzione su android è un po’ più macchinosa di quella su iOs ma ugualmente risolutiva.

Per prima cosa, realizzare una nuova classe:

import org.apache.cordova.CordovaWebViewClient;
import org.apache.cordova.DroidGap;

import android.net.http.SslError;
import android.webkit.SslErrorHandler;
import android.webkit.WebView;

public class SSLAcceptingWebViewClient extends CordovaWebViewClient {
    public SSLAcceptingWebViewClient(DroidGap ctx) {
        super(ctx);
    }
    @Override
    public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
            handler.proceed();
    }

}

che estende la classe CordovaWebViewClient e riscrive il metodo onReceivedSslError , forzando l’esecuzione della richiesta con handler.proceed()

In seguito, modificare in questo modo la main activity :

public class MyActivity extends DroidGap {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        super.init();

        CordovaWebViewClient webViewClient = new SSLAcceptingWebViewClient(this);
        webViewClient.setWebView(this.appView);
        this.appView.setWebViewClient(webViewClient);

        super.loadUrl(Config.getStartUrl());
    }
}