/[projects]/android/EKLLauncher/src/dk/thoerup/ekllauncher/EKLLauncherActivity.java
ViewVC logotype

Diff of /android/EKLLauncher/src/dk/thoerup/ekllauncher/EKLLauncherActivity.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1616 by torben, Thu Oct 20 18:39:19 2011 UTC revision 1621 by torben, Fri Oct 21 04:59:27 2011 UTC
# Line 3  package dk.thoerup.ekllauncher; Line 3  package dk.thoerup.ekllauncher;
3  import android.app.Activity;  import android.app.Activity;
4  import android.content.Context;  import android.content.Context;
5  import android.content.Intent;  import android.content.Intent;
6    import android.net.ConnectivityManager;
7    import android.net.NetworkInfo;
8  import android.os.Bundle;  import android.os.Bundle;
9  import android.os.Handler;  import android.os.Handler;
10  import android.os.Message;  import android.os.Message;
# Line 16  import android.webkit.GeolocationPermiss Line 18  import android.webkit.GeolocationPermiss
18  import android.webkit.JsPromptResult;  import android.webkit.JsPromptResult;
19  import android.webkit.WebChromeClient;  import android.webkit.WebChromeClient;
20  import android.webkit.WebSettings;  import android.webkit.WebSettings;
21    import android.webkit.WebStorage;
22  import android.webkit.WebStorage.QuotaUpdater;  import android.webkit.WebStorage.QuotaUpdater;
23  import android.webkit.WebView;  import android.webkit.WebView;
24    import android.webkit.WebViewClient;
25  import android.widget.Toast;  import android.widget.Toast;
26    
27  public class EKLLauncherActivity extends Activity {  public class EKLLauncherActivity extends Activity {
# Line 25  public class EKLLauncherActivity extends Line 29  public class EKLLauncherActivity extends
29          class CustomChromeClient extends WebChromeClient {          class CustomChromeClient extends WebChromeClient {
30                                    
31                  @Override                  @Override
32                  public boolean onCreateWindow(WebView view, boolean dialog,                  public void onReachedMaxAppCacheSize(long spaceNeeded, long totalUsedQuota, QuotaUpdater quotaUpdater) {
33                                  boolean userGesture, Message resultMsg) {                          quotaUpdater.updateQuota(totalUsedQuota + 4096);
34                    }
35    
36    
37                    @Override
38                    public boolean onCreateWindow(WebView view, boolean dialog, boolean userGesture, Message resultMsg) {
39                          msg("create window");                          msg("create window");
40                          return super.onCreateWindow(view, dialog, userGesture, resultMsg);                          return super.onCreateWindow(view, dialog, userGesture, resultMsg);
41                  }                  }
# Line 75  public class EKLLauncherActivity extends Line 84  public class EKLLauncherActivity extends
84                  }                  }
85                                    
86          }          }
87            
88            class DummyWebViewClient extends WebViewClient {                
89            }
90                    
91          static final String URL = "http://omdeling.info/mobil/ekl/login.php";          static final String URL = "http://omdeling.info/mobil/ekl/login.php";
92                    
93            ConnectivityManager connMgr;
94          TelephonyManager telMgr;          TelephonyManager telMgr;
95          WebView web;          WebView web;
96          String device = "";          String device = "";
# Line 104  public class EKLLauncherActivity extends Line 116  public class EKLLauncherActivity extends
116                          intent.putExtra("state", false);                          intent.putExtra("state", false);
117                          sendBroadcast(intent);                          sendBroadcast(intent);
118                  }                  }
                 Log.d("EKL", "Airplane " +  airplane);  
119          } catch (Settings.SettingNotFoundException e) {          } catch (Settings.SettingNotFoundException e) {
120                  Log.d("EKL", "Exception " + e.getMessage() );                  Log.d("EKL", "Exception " + e.getMessage() );
121          }          }
# Line 113  public class EKLLauncherActivity extends Line 124  public class EKLLauncherActivity extends
124                    
125                    
126          telMgr = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);          telMgr = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
127            connMgr = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);
128            
129          device = telMgr.getLine1Number();          device = telMgr.getLine1Number();
130          if (device == null || device.equals("")) {          if (device == null || device.equals("")) {
131                  device = telMgr.getDeviceId();                  device = telMgr.getDeviceId();
# Line 127  public class EKLLauncherActivity extends Line 140  public class EKLLauncherActivity extends
140                    
141          WebSettings settings = web.getSettings();          WebSettings settings = web.getSettings();
142                    
143                            
144          settings.setJavaScriptEnabled(true);          settings.setJavaScriptEnabled(true);
145                    
146          settings.setAppCacheEnabled(true);          settings.setAppCacheEnabled(true);
147            settings.setAppCachePath( this.getCacheDir().toString() );
148                    
149          settings.setJavaScriptCanOpenWindowsAutomatically(false);          settings.setJavaScriptCanOpenWindowsAutomatically(false);
150          settings.setGeolocationEnabled(true);          settings.setGeolocationEnabled(true);
151                    
152          settings.setDomStorageEnabled(true);                  settings.setDomStorageEnabled(true);
         settings.setDatabaseEnabled(true);  
153                    
154            settings.setDatabaseEnabled(true);        
155          settings.setDatabasePath( this.getCacheDir().toString() );          settings.setDatabasePath( this.getCacheDir().toString() );
156    
157                    
158          settings.setSupportMultipleWindows(false);          settings.setSupportMultipleWindows(false);
159                    
160          web.setWebChromeClient(new CustomChromeClient() );          web.setWebChromeClient(new CustomChromeClient() );
161          web.setWebViewClient( new DebugWebViewClient() );          web.setWebViewClient( new DummyWebViewClient() ); // skal have en webviewclient for at kunne styre ved forlad tur
162    
163                    
164          if (telMgr.getSimState() == TelephonyManager.SIM_STATE_READY && telMgr.getDataState() == TelephonyManager.DATA_CONNECTED) {          simHandler.sendEmptyMessage(0);
                 web.loadUrl( URL );  
         } else {  
                 web.loadData("<html><body><h2>afventer netv&aelig;rksforbindelse</h2></body></html>", "text/html", "iso-8859-1");  
                 simHandler.sendEmptyMessageDelayed(0, 1500);  
         }  
165                    
166      }      }
167    
# Line 173  public class EKLLauncherActivity extends Line 183  public class EKLLauncherActivity extends
183                          web.reload();                          web.reload();
184                          break;                          break;
185                  case 2:                  case 2:
186                            WebStorage.getInstance().deleteAllData();
187                          web.clearCache(true);                          web.clearCache(true);
188                          web.reload();                          web.reload();
189                          break;                          break;
# Line 190  public class EKLLauncherActivity extends Line 201  public class EKLLauncherActivity extends
201          };          };
202                    
203                    
204    
205            SimHandler simHandler = new SimHandler();
206                    
207          Handler simHandler = new Handler() {          class SimHandler extends Handler {
208                  @Override                  
209                  public void handleMessage(Message msg) {                  public void testNetwork() {
210                          super.handleMessage(msg);                          NetworkInfo network = connMgr.getActiveNetworkInfo();
211                          if (telMgr.getSimState() == TelephonyManager.SIM_STATE_READY && telMgr.getDataState() == TelephonyManager.DATA_CONNECTED) {                          
212                            if ( (telMgr.getSimState() == TelephonyManager.SIM_STATE_READY && telMgr.getDataState() == TelephonyManager.DATA_CONNECTED) || ( network != null && network.getType() == ConnectivityManager.TYPE_WIFI) ) {
213                                  web.loadUrl( URL );                                  web.loadUrl( URL );
214                          } else {                          } else {
215                            web.loadData("<html><body><h2>afventer netv&aelig;rksforbindelse</h2></body></html>", "text/html", "iso-8859-1");
216                                  this.sendEmptyMessageDelayed(0, 1000);                                  this.sendEmptyMessageDelayed(0, 1000);
217                          }                          }
218                  }                  }
219                    
220                    @Override
221                    public void handleMessage(Message msg) {
222                            super.handleMessage(msg);
223                            
224                            testNetwork();
225                    }
226          };          };
227            
228            

Legend:
Removed from v.1616  
changed lines
  Added in v.1621

  ViewVC Help
Powered by ViewVC 1.1.20