Sto sviluppando un'applicazione javascript/HTML con jquerymobile che fa richieste ajax a un server remoto. L'applicazione funziona bene su Chrome (solo l'avvio di Chrome con la sicurezza Web disabilitata) ma quando lo incorporo all'interno della directory assets/di un'applicazione Android (una semplice webview) le chiamate ajax remote falliscono. Quindi immagino possa trattarsi di un problema interdominio. Sono consapevole del fatto che PhoneGap non ha questo problema, ma mi piacerebbe non usare phonegap se possibile. Quindi la domanda è: come disabilitare la protezione interdominio in un'applicazione webview Android?Consenti chiamate ajax remote in una Webview Android + jquery mobile
Questo è il codice di attività:
public class Moby extends Activity {
@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_moby);
WebView mbrowser = (WebView) findViewById(R.id.webView1); //get the WebView from the layout XML
if (Build.VERSION.SDK_INT >= VERSION_CODES.JELLY_BEAN)
mbrowser.getSettings().setAllowUniversalAccessFromFileURLs(true);
//mbrowser.setWebChromeClient(new WebChromeClient());
mbrowser.setWebViewClient(new WebViewClient());
mbrowser.loadUrl("file:///android_asset/index.html"); //set the HTML
WebSettings settings = mbrowser.getSettings();
settings.setJavaScriptEnabled(true);
}
}
<uses-permission android:name="android.permission.INTERNET" />
E ho già impostato i parametri di dominio jquerymobile incrociati nelle mie pagine html:
<script src="script/jquery-1.8.2.js"></script>
<script>
$(document).bind("mobileinit", function(){
$.support.cors = true;
$.mobile.allowCrossDomainPages = true;
});
</script>
<script src="script/jquery.mobile-1.2.0.js"></script>
Grazie per la risposta, ho dato alla domanda di questo usa-permesso, ma il problema è ancora presente – sproing