2010-09-22 31 views
5

Android Browser'a bir Web tarayıcısı bileşenine illustrated in this demo olarak eklenebilir şekilde bir JavaScript arabirimi eklemek mümkün müdür. Benim özel kullanım durumum sadece JavaScript -> android gerektirir, böylece bir önceki etkinliğe geri gönderebilirim.Tarayıcıya JavaScript Arayüzü Ekleme

+0

Sadece merak, neden işaret ettik açık kaynak projesinin kodunu kullanmayın? Aradığın yerde değil mi? JS Arayüzüyle ne kastettiğinizden emin değilsiniz, neler yaptığını açıklayabilir misiniz? –

+0

Tarayıcı'nın bir Web Görünümü üzerinden daha sıkı entegrasyonuna ihtiyacım var. Bir web sayfasının bir düğmesine basmalı ve önceki Faaliyete dönüşü tetiklemeliyim (tarayıcıyı çalıştıran) –

+1

Bence bu mümkün değil ... tehlikeli olacağını düşünmüyor musunuz? Yani, bu tür şeylere izin vermek BÜYÜK bir güvenlik sorunu olurdu. – Cristian

cevap

9

Sen javascript url, örneğin kullanarak Web görünümündeki yöntemleri ve işlevleri çağırabilirsiniz

webview.loadUrl("javascript:somemethod()"); 

Elbette, sizin Web görünümündeki javascript etkinleştirmeniz gerekecektir:

webview.getSettings().setJavaScriptEnabled(true); 

Bu javascript java arasındadır. Eğer javascript java kodu/android API'lerini çağırmak istiyorsanız,

webview.addJavascriptInterface(new MyJSJavaBridge(), "api"); 

Tüm bu

siz de yayınlanan örnek url gösterilmiştir() addJavascriptInterface kullanın.

+0

, WebView'de, soruda bağlandığım WebViewDemo'daki ile aynı adımları açıkladınız, ancak Tarayıcı hakkında ne düşünüyorsunuz? –

+0

@vo van der Wijk Bu kod hakkında soru var - 'webview.loadUrl (" javascript: somemethod() "); çünkü benim uygulamamda bu işe yaramıyor = ( kodumun nesi yanlış olduğunu açıklayabilirsin çalışmayan - 'webview.loadUrl (" javascript: document.getElementById ('pass_id'). value = '"+ CLIENT_PWD +"') "); – vladimir