Acho que o problema não ficou claro,
Eu faço exatamente isso.. tenho uma interface e injeto ela no html ... a chamada do método esta funcionando normalmente.
O problema esta na hora de exibir a dialog, não, não dá pra usar progress, funciona mais ou menos assim, eu tenho uma imagem e uma div ... (seria o conteudo da webview que esta no viewpager) ..
No evento onclick da div eu coloco "window.jsBridge.linkClick();", onde jsBridge é a minha interface que foi injetada no momento da criação do webview.
Quando o usuário tocar sobre a div, deverá ser aberta uma janela de dialog e será exibido um conteudo que pode ser um video ou uma imagem..
Para evitar o problema de codec do Android com relação aos videos eu utilizo uma webview para exibi-lo, o src do video poderá ser tanto do youtube quando do vimeo. O problema por algum motivo ocorre no momento que ele esta configurando a segunda webview (que estara dentro do dialog).
Não sei se vou falar bobagem, mas acho que esta havendo alguma concorrencia entre as Threads das webviews e pode estar gerando o erro.
Oq vcs acham?
Obrigado pela ajuda.
--
Cordialmente,
Marcos Reis
Analista de Sistemas / Android
Pontomobi
Any screen,
Anywhere™
São Paulo | Rio | BH | Recife | London
On 25/07/2013, at 16:18, Andre Souza <deh.osouza@gmail.com> wrote:
Ja sei qual o problema.. vc está tentando chamar um metodo de interface la pelo html/javascript. Faça dessa forma, cria dentro da classe que cria o webview:class JsObject {@JavascriptInterfacepublic void seuMetodoDeInteface() {runOnUiThread(new Runnable() {@Overridepublic void run() {//Aqui vc exibe dialogs, faz update de nas UI, etc}});}}depois que criar seu webview, vc faz:seuWebView = (WebView) findViewById(R...seuWebView.addJavascriptInterface(new JsObject(), "injectedObject");esse nome "injectedObject" é que vai ser utilizado no lado do do html/javascript pra chamar os metodos da sua classe. Então la no seu html vc usa:injectedObject.seuMetodoDeInteface() ; //irá executar seu metodo
Isso funciona comigo, tenta ai e ve se dá certo =]Em 25 de julho de 2013 15:23, Marcos Reis | .Mobi <marcos.reis@pontomobi.com.br> escreveu:
Boa Tarde Galera,Estou trabalhando em um app que esta me rendendo uma certa dor de cabeça, estou passando por um problema com a utilização de webviews e gostaria da ajuda de vcs.O cenário é o seguinte:1 - Tenho um viewpager que exibe webviews, onde processo um html e mostra uma imagem embarcada no app.2 - Junto com o html crio algumas "divs" e associo a elas uma chamada a um metodo em minha classe Java atraves da interface de JavaScript.3 - Quando o evento é disparado exibo uma Dialog customizada que irá apresentar outra webview, esta por sua vez poderá exibir diversos conteudos, como por exemplo, imagem, videos, etc ..O problema é o seguinte, quando faço a chamada a minha Dialog o seguinte warning é gerado no Logcat[1] e o conteúdo não aparece, e o erro continua estourando mesmo depois que eu fecho o app.Alguem ai teria alguma ideia do que pode estar acontecendo ???Segue tambem um print do código da configuração da webview que esta no viewpager[2] e da webview que esta no dialog[3].Desde já agradeço pela ajuda.
--Cordialmente,
Marcos ReisAnalista de Sistemas / AndroidPontomobiAny screen,Anywhere™São Paulo | Rio | BH | Recife | London
--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
André Luiz de Oliveira Souza
Engenheiro da Computação
Pós-graduando em Desenvolvimento de Software com ênfase em Java Corporativo--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.






0 comentários:
Postar um comentário