0

привет Я новичок в разработке андроида,Включите JavaScript на андроид в WebView

Я хочу установить мое javscript включить в моем андроиде WebView. Я все пробовал, но он не работает. Мой код ниже - мой класс webview. Я надеюсь, что кто-то может мне помочь.

package visuals.Webview; 

import android.app.Activity; 
import android.content.Intent; 
import android.graphics.Bitmap; 
import android.net.Uri; 
import android.os.Bundle; 
import android.view.KeyEvent; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 

public class VisualsActivity extends Activity { 
/** Called when the activity is first created. */ 

final Activity activity = this; 
WebView webview; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    webview = (WebView) findViewById(R.id.webview); 
    // webview.setWebViewClient(new myWebClient()); 

    webview.loadUrl("http://192.168.0.62/lastversion/index.php"); 
    webview.getSettings().setJavaScriptEnabled(true); 
    webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY); 
    webview.getSettings().setUserAgentString(getString(R.string.user_agent_suffix)); 
} 

public class myWebClient extends WebViewClient 
{ 
    @Override 
    public void onPageStarted(WebView view, String url, Bitmap favicon) { 
     // TODO Auto-generated method stub 
     super.onPageStarted(view, url, favicon); 
    } 

    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     if (url.startsWith("tel:")) { 
      startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(url))); 
      return true; 
     } else if (url.startsWith("mailto:")) { 
      url = url.replaceFirst("mailto:", ""); 
      url = url.trim(); 
      Intent i = new Intent(Intent.ACTION_SEND); 
      i.setType("plain/text").putExtra(Intent.EXTRA_EMAIL, new String[]{url}); 
      startActivity(i); 
      return true; 
     } else { 
      view.loadUrl(url); 
      return true; 
     } 
    } 
} 

// To handle "Back" key press event for WebView to go back to previous screen. 
@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) 
{ 
    if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack()) { 
     webview.goBack(); 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
} 
} 

Благодарим Вас за помощь

+0

Вы протестировали простой скрипт в загруженном файле? – Kwenk

ответ

3
WebView webView; 
webView.getSettings().setJavaScriptEnabled(true); 

Довольно легко :)

+0

Он уже написал строку. Не знаю, почему, черт возьми, это не сработало. – Shaiful

+0

Ну так проблема в чем-то еще, потому что эта строка кода выполняет свою работу :) Может быть, у него есть некоторые проблемы в его javascript – StErMi

1
webview.getSettings().setPluginState(PluginState.ON); 

или при использовании более старых версий (< API 8)

webView.getSettings().setJavaScriptEnabled(true); 
0
WebSettings webSettings = myWebView.getSettings(); 
webSettings.setJavaScriptEnabled(true); 

И если вы хотите, чтобы ваш веб-просмотр javascript мог взаимодействовать с вашим приложением Android. Взгляните на документацию по методу addJavascriptInterface webview.

Смежные вопросы