2010-02-10 9 views
1

Je pense à la mise en œuvre d'un panneau de bienvenue HTML à notre application Android, qui présente des nouvelles et des offres sur l'écran de démarrage. Ma question est maintenant, si je présente une offre à un endroit spécifique (avec un id string) puis-je déclencher un rappel de WebView (peut-être via Java Script) à l'application Android et passer ce id string pour le faire démarrer un nouveau Activity qui charge et montre les données d'un serveur (JSON) en fonction de cela id string?Android: cliquez dans WebView provoque rappel à l'application Android

La deuxième partie est déjà implémentée et fonctionne. Ma principale préoccupation est de savoir comment obtenir le id string du HTML WebView de nouveau à l'application Android lorsque l'utilisateur clique dessus.

Nous préférons utiliser un WebView pour ce panneau de bienvenue spécifique, car il nous donne plus de flexibilité pour personnaliser en utilisant HTML.

Répondre

3

oui en effet vous pouvez bien monsieur! Si vous affichez les données dans une alerte javascript, vous pouvez les capturer comme ceci. Il pourrait ne pas être la manière la plus nette, mais il fonctionne =)

private void loadWebViewStuff() { 
     myWebView.setWebChromeClient(new MyWebChromeClient()); 
     myWebView.loadUrl(URL); 
} 


final class MyWebChromeClient extends WebChromeClient { 
    @Override 
    public boolean onJsAlert(WebView view, String url, String message, JsResult result) { 
     //"message" is what is shown in the alert, here we can do whatever with it 
    } 
} 
+0

Cool. Je vous remercie. Qui aide :-) – znq