/[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 1618 by torben, Thu Oct 20 20:30:48 2011 UTC revision 1624 by torben, Wed Oct 26 09:01:56 2011 UTC
# Line 1  Line 1 
1  package dk.thoerup.ekllauncher;  package dk.thoerup.ekllauncher;
2    
3  import android.app.Activity;  import android.app.Activity;
4    import android.app.AlertDialog;
5  import android.content.Context;  import android.content.Context;
6    import android.content.DialogInterface;
7  import android.content.Intent;  import android.content.Intent;
8    import android.location.LocationManager;
9  import android.net.ConnectivityManager;  import android.net.ConnectivityManager;
10    import android.net.NetworkInfo;
11  import android.os.Bundle;  import android.os.Bundle;
12  import android.os.Handler;  import android.os.Handler;
13  import android.os.Message;  import android.os.Message;
# Line 17  import android.webkit.GeolocationPermiss Line 21  import android.webkit.GeolocationPermiss
21  import android.webkit.JsPromptResult;  import android.webkit.JsPromptResult;
22  import android.webkit.WebChromeClient;  import android.webkit.WebChromeClient;
23  import android.webkit.WebSettings;  import android.webkit.WebSettings;
24    import android.webkit.WebStorage;
25  import android.webkit.WebStorage.QuotaUpdater;  import android.webkit.WebStorage.QuotaUpdater;
26  import android.webkit.WebView;  import android.webkit.WebView;
27  import android.webkit.WebViewClient;  import android.webkit.WebViewClient;
# Line 27  public class EKLLauncherActivity extends Line 32  public class EKLLauncherActivity extends
32          class CustomChromeClient extends WebChromeClient {          class CustomChromeClient extends WebChromeClient {
33                                    
34                  @Override                  @Override
35                  public boolean onCreateWindow(WebView view, boolean dialog,                  public void onReachedMaxAppCacheSize(long spaceNeeded, long totalUsedQuota, QuotaUpdater quotaUpdater) {
36                                  boolean userGesture, Message resultMsg) {                          quotaUpdater.updateQuota(totalUsedQuota + 4096);
                         msg("create window");  
                         return super.onCreateWindow(view, dialog, userGesture, resultMsg);  
37                  }                  }
38    
39    
40    
41                  public void onProgressChanged(WebView view, int progress) {                  public void onProgressChanged(WebView view, int progress) {
42                          // Activities and WebViews measure progress with different scales.                          // Activities and WebViews measure progress with different scales.
43                          // The progress meter will automatically disappear when we reach 100%                          // The progress meter will automatically disappear when we reach 100%
# Line 83  public class EKLLauncherActivity extends Line 87  public class EKLLauncherActivity extends
87                    
88          static final String URL = "http://omdeling.info/mobil/ekl/login.php";          static final String URL = "http://omdeling.info/mobil/ekl/login.php";
89                    
90            LocationManager locMgr;
91          ConnectivityManager connMgr;          ConnectivityManager connMgr;
92          TelephonyManager telMgr;          TelephonyManager telMgr;
93          WebView web;          WebView web;
94          String device = "";          String device = "";
95                    
96                    
         public void msg(String m) {  
                 Toast.makeText(EKLLauncherActivity.this, m, Toast.LENGTH_SHORT).show();  
         }  
97                    
98      /** Called when the activity is first created. */      /** Called when the activity is first created. */
99      @Override      @Override
# Line 115  public class EKLLauncherActivity extends Line 117  public class EKLLauncherActivity extends
117                    
118                    
119                    
120                    locMgr = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
121          telMgr = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);          telMgr = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
122          connMgr = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);          connMgr = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);
123                    
# Line 127  public class EKLLauncherActivity extends Line 129  public class EKLLauncherActivity extends
129                          device = "";                          device = "";
130          }          }
131                    
132    
133                    
134          setContentView(R.layout.main);          setContentView(R.layout.main);
135          web = (WebView) findViewById(R.id.web);          web = (WebView) findViewById(R.id.web);
136                    
137          WebSettings settings = web.getSettings();          WebSettings settings = web.getSettings();
138                    
139                            
140          settings.setJavaScriptEnabled(true);          settings.setJavaScriptEnabled(true);
141                    
142          settings.setAppCacheEnabled(true);          settings.setAppCacheEnabled(true);
143            settings.setAppCachePath( this.getCacheDir().toString() );
144                    
145          settings.setJavaScriptCanOpenWindowsAutomatically(false);          settings.setJavaScriptCanOpenWindowsAutomatically(false);
146          settings.setGeolocationEnabled(true);          settings.setGeolocationEnabled(true);
147                    
148          settings.setDomStorageEnabled(true);                  settings.setDomStorageEnabled(true);
         settings.setDatabaseEnabled(true);  
149                    
150            settings.setDatabaseEnabled(true);        
151          settings.setDatabasePath( this.getCacheDir().toString() );          settings.setDatabasePath( this.getCacheDir().toString() );
152    
153                    
# Line 151  public class EKLLauncherActivity extends Line 155  public class EKLLauncherActivity extends
155                    
156          web.setWebChromeClient(new CustomChromeClient() );          web.setWebChromeClient(new CustomChromeClient() );
157          web.setWebViewClient( new DummyWebViewClient() ); // skal have en webviewclient for at kunne styre ved forlad tur          web.setWebViewClient( new DummyWebViewClient() ); // skal have en webviewclient for at kunne styre ved forlad tur
158    
159            
160            simHandler.sendEmptyMessage(0);
161            
162                    
         if ( (telMgr.getSimState() == TelephonyManager.SIM_STATE_READY && telMgr.getDataState() == TelephonyManager.DATA_CONNECTED) || connMgr.getActiveNetworkInfo().getType() == ConnectivityManager.TYPE_WIFI) {  
                 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);  
         }  
163                    
164            
165            if (!locMgr.isProviderEnabled(LocationManager.GPS_PROVIDER )) {
166                    //Settings.Secure.putString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED, "network,gps");
167                    
168                    AlertDialog.Builder builder = new AlertDialog.Builder(this);
169                    builder.setMessage("GPS er slået fra på telefonen!\nSæt et flueben ved GPS i næste vindue og tryk derefter på tilbage knappen (nederst på telefonen)")
170                .setPositiveButton("OK", new DialogInterface.OnClickListener() {
171                    public void onClick(DialogInterface dialog, int id) {
172                            Intent myIntent = new Intent( Settings.ACTION_SECURITY_SETTINGS );
173                        startActivity(myIntent);      
174                    }
175                })
176                .create()
177                .show();      
178            }
179      }      }
180    
181          @Override          @Override
# Line 179  public class EKLLauncherActivity extends Line 196  public class EKLLauncherActivity extends
196                          web.reload();                          web.reload();
197                          break;                          break;
198                  case 2:                  case 2:
199                            WebStorage.getInstance().deleteAllData();
200                          web.clearCache(true);                          web.clearCache(true);
201                          web.reload();                          web.reload();
202                          break;                          break;
# Line 196  public class EKLLauncherActivity extends Line 214  public class EKLLauncherActivity extends
214          };          };
215                    
216                    
217    
218            SimHandler simHandler = new SimHandler();
219                    
220          Handler simHandler = new Handler() {          class SimHandler extends Handler {
221                  @Override                  
222                  public void handleMessage(Message msg) {                  public void testNetwork() {
223                          super.handleMessage(msg);                          NetworkInfo network = connMgr.getActiveNetworkInfo();
224                          if (telMgr.getSimState() == TelephonyManager.SIM_STATE_READY && telMgr.getDataState() == TelephonyManager.DATA_CONNECTED) {                          
225                            if ( (telMgr.getSimState() == TelephonyManager.SIM_STATE_READY && telMgr.getDataState() == TelephonyManager.DATA_CONNECTED) || ( network != null && network.getType() == ConnectivityManager.TYPE_WIFI) ) {
226                                  web.loadUrl( URL );                                  web.loadUrl( URL );
227                          } else {                          } else {
228                            web.loadData("<html><body><h2>afventer netv&aelig;rksforbindelse</h2></body></html>", "text/html", "iso-8859-1");
229                                  this.sendEmptyMessageDelayed(0, 1000);                                  this.sendEmptyMessageDelayed(0, 1000);
230                          }                          }
231                  }                  }
232                    
233                    @Override
234                    public void handleMessage(Message msg) {
235                            super.handleMessage(msg);
236                            
237                            testNetwork();
238                    }
239          };          };
240            
241            

Legend:
Removed from v.1618  
changed lines
  Added in v.1624

  ViewVC Help
Powered by ViewVC 1.1.20