77import android .content .Intent ;
88import android .content .SharedPreferences ;
99import android .content .pm .ActivityInfo ;
10+ import android .net .http .SslError ;
1011import android .os .Bundle ;
1112import android .view .KeyEvent ;
1213import android .view .MotionEvent ;
1314import android .view .View ;
1415import android .view .Window ;
1516import android .view .WindowManager ;
17+ import android .webkit .SslErrorHandler ;
18+ import android .webkit .WebChromeClient ;
1619import android .webkit .WebView ;
20+ import android .webkit .WebViewClient ;
1721import android .widget .Button ;
1822import android .widget .Toast ;
1923
@@ -79,9 +83,38 @@ protected void onCreate(Bundle savedInstanceState) {
7983
8084 //Get the webView and load the URL
8185 webView = findViewById (R .id .webview );
82- webView .setWebViewClient (new KioskWebviewClient ());
86+ webView .setWebViewClient (new WebViewClient () {
87+ @ Override
88+ public void onPageFinished (WebView view , String url ) {
89+ super .onPageFinished (view , url );
90+ TimerTask lock = new TimerTask () {
91+ @ Override
92+ public void run () {
93+ locked = true ;
94+ }
95+ };
96+
97+ timerLock = new Timer (true );
98+ timerLock .schedule (lock , 5000 );
99+ }
100+
101+ @ Override
102+ public boolean shouldOverrideUrlLoading (WebView view , String url ) {
103+ if (url .contains (url )) {
104+ view .loadUrl (url );
105+ }
106+ return true ;
107+
108+ }
109+
110+ @ Override
111+ public void onReceivedSslError (WebView view , SslErrorHandler handler , SslError error ) {
112+ handler .proceed (); //Ignore SSL certificate error
113+ }
114+ });
83115 webView .getSettings ().setJavaScriptEnabled (true );
84116 webView .loadUrl (URL );
117+
85118 Toast .makeText (this , "Loading " + URL , Toast .LENGTH_SHORT ).show ();
86119
87120 webView .setOnTouchListener (new View .OnTouchListener () {
@@ -100,16 +133,6 @@ public boolean onTouch(View view, MotionEvent motionEvent) {
100133 }
101134 });
102135
103- TimerTask lock = new TimerTask () {
104- @ Override
105- public void run () {
106- locked = true ;
107- }
108- };
109-
110- timerLock = new Timer (true );
111- timerLock .schedule (lock , 5000 );
112-
113136 numbers = new ArrayList <Button >();
114137
115138 }
0 commit comments