/[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 1925 by torben, Mon Feb 25 08:39:29 2013 UTC revision 1933 by torben, Tue Feb 26 11:15:36 2013 UTC
# Line 19  import android.util.Log; Line 19  import android.util.Log;
19  import android.view.Menu;  import android.view.Menu;
20  import android.view.MenuItem;  import android.view.MenuItem;
21  import android.view.Window;  import android.view.Window;
22    import android.view.WindowManager;
23  import android.webkit.GeolocationPermissions.Callback;  import android.webkit.GeolocationPermissions.Callback;
24  import android.webkit.JsPromptResult;  import android.webkit.JsPromptResult;
25  import android.webkit.WebChromeClient;  import android.webkit.WebChromeClient;
# Line 76  public class EKLLauncherActivity extends Line 77  public class EKLLauncherActivity extends
77                          String msg = message.trim().toLowerCase();                          String msg = message.trim().toLowerCase();
78    
79                          if (msg.equals("ekl identifikation mangler")) {                          if (msg.equals("ekl identifikation mangler")) {
80                                  result.confirm(device);                                  if (device != null && device.equals("")==false) {
81                                            result.confirm(device);
82    
83                                  timeoutHandler.sendEmptyMessageDelayed(1, 500); //efter pdaID er sendt til app'en skal vi genindlæse siden for at tvinge den til at hente data                                          timeoutHandler.sendEmptyMessageDelayed(1, 500); //efter pdaID er sendt til app'en skal vi genindlæse siden for at tvinge den til at hente data
84                                  return true;                                          return true;
85                          } else if (msg.startsWith("indtast retur antal")) {                                  } else {
86                                            //Hvis vi ikke kunne aflæse device, spørg user via en custom Input Dialog
87                                  AlertDialog.Builder alert = new AlertDialog.Builder(EKLLauncherActivity.this);                                          //Dialogen kan kun tage imod tal &
88                                            //når at vi får en confirm på den tvinger vi ud i en reload af siden
89                                  //alert.setTitle("Title");                                          
90                                  alert.setMessage(message);                                          AlertDialog.Builder alert = new AlertDialog.Builder(EKLLauncherActivity.this);
91    
92                                  // Set an EditText view to get user input                                          //alert.setTitle("Title");
93                                  final EditText input = new EditText(EKLLauncherActivity.this);                                          alert.setMessage(message);
94                                  input.setInputType(InputType.TYPE_CLASS_NUMBER);  
95                                  alert.setView(input);                                          // Set an EditText view to get user input
96                                            final EditText input = new EditText(EKLLauncherActivity.this);
97                                  alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {                                          input.setInputType(InputType.TYPE_CLASS_NUMBER);
98                                          public void onClick(DialogInterface dialog, int whichButton) {                                          alert.setView(input);
99                                                  result.confirm(input.getText().toString());  
100                                          }                                          alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
101                                  });                                                  public void onClick(DialogInterface dialog, int whichButton) {
102                                  alert.show();                                                          result.confirm(input.getText().toString());
103                                                            timeoutHandler.sendEmptyMessageDelayed(1, 500);
104                                  return true;                                                                              }
105                                            });
106                                            alert.show();
107    
108                                            return true;            
109                                            
110                                    }              
111                          } else {                          } else {
112                                  return super.onJsPrompt(view, url, message, defaultValue, result);                                  return super.onJsPrompt(view, url, message, defaultValue, result);
113                          }                                                                                                }                                                                      
# Line 109  public class EKLLauncherActivity extends Line 117  public class EKLLauncherActivity extends
117          class DummyWebViewClient extends WebViewClient {                          class DummyWebViewClient extends WebViewClient {                
118          }          }
119                    
120          static final String URL = "http://omdeling.info/mobil_gpstrack/ekl/login.php";          static final String LOGTAG = "EklLauncher";
121            static final String URL = "http://omdeling.info/mobil/ekl/";
122                    
123          LocationManager locMgr;          LocationManager locMgr;
124          ConnectivityManager connMgr;          ConnectivityManager connMgr;
# Line 121  public class EKLLauncherActivity extends Line 130  public class EKLLauncherActivity extends
130                    
131          SimHandler simHandler = new SimHandler();          SimHandler simHandler = new SimHandler();
132                    
133            @Override
134            public void onAttachedToWindow() {
135                this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
136                super.onAttachedToWindow();
137            }
138            
139      /** Called when the activity is first created. */      /** Called when the activity is first created. */
140      @Override          @Override
141      public void onCreate(Bundle savedInstanceState) {      public void onCreate(Bundle savedInstanceState) {
142          super.onCreate(savedInstanceState);          super.onCreate(savedInstanceState);
143                    
144            Log.e(LOGTAG, "Creating");
145            
146          getWindow().requestFeature(Window.FEATURE_PROGRESS);          getWindow().requestFeature(Window.FEATURE_PROGRESS);
147                    
148                    
149          try {          try {
150                  int airplane = Settings.System.getInt(this.getContentResolver(), Settings.System.AIRPLANE_MODE_ON);                  int airplane = Settings.System.getInt(this.getContentResolver(), Settings.System.AIRPLANE_MODE_ON);
151                    
152                  if (airplane > 0) {                  if (airplane > 0) {
153                          Settings.System.putInt(this.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0);                          Settings.System.putInt(this.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0);
154                          Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);                          Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
# Line 144  public class EKLLauncherActivity extends Line 162  public class EKLLauncherActivity extends
162          locMgr = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);          locMgr = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
163          telMgr = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);          telMgr = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
164          connMgr = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);                  connMgr = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);        
165                            
         PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);  
         wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "EklLauncher");  
         wakeLock.acquire();          
166                    
167                    
168                    
169          device = telMgr.getLine1Number();          device = telMgr.getLine1Number();
170          if (device == null || device.equals("")) {          if(device == null) {
171                  device = telMgr.getSimSerialNumber();                  device = "";
172                            }
173                  if(device == null)          if (device != null && device.equals("") == false){//Hvis vi kunne aflæse TLF nummer fra sim, så hvis den som en toast
174                          device = "";                                              Toast.makeText(EKLLauncherActivity.this, "Device: "+device, Toast.LENGTH_SHORT).show();
175          }          }
176            
177            Log.i(LOGTAG, "Device Line1: " + telMgr.getLine1Number());
178            Log.i(LOGTAG, "Device simserial: " + telMgr.getSimSerialNumber());
179            Log.i(LOGTAG, "Device subscriber: " + telMgr.getSubscriberId());
180            Log.i(LOGTAG, "Device deviceid: " + telMgr.getDeviceId());//IMEI
181                    
182          Toast.makeText(EKLLauncherActivity.this, "Device:"+device, Toast.LENGTH_SHORT).show();                  
           
   
183                    
184          setContentView(R.layout.main);          setContentView(R.layout.main);
185          web = (WebView) findViewById(R.id.web);          web = (WebView) findViewById(R.id.web);
# Line 187  public class EKLLauncherActivity extends Line 205  public class EKLLauncherActivity extends
205                    
206          web.setWebChromeClient(new CustomChromeClient() );          web.setWebChromeClient(new CustomChromeClient() );
207          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
208                    
           
         simHandler.sendEmptyMessage(0);  
           
209                    
210    
211    
212                    
213                    
214          if (!locMgr.isProviderEnabled(LocationManager.GPS_PROVIDER )) {          if (!locMgr.isProviderEnabled(LocationManager.GPS_PROVIDER )) {
# Line 201  public class EKLLauncherActivity extends Line 218  public class EKLLauncherActivity extends
218                  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)")                  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)")
219              .setPositiveButton("OK", new DialogInterface.OnClickListener() {              .setPositiveButton("OK", new DialogInterface.OnClickListener() {
220                  public void onClick(DialogInterface dialog, int id) {                  public void onClick(DialogInterface dialog, int id) {
221                          Intent myIntent = new Intent( Settings.ACTION_SECURITY_SETTINGS );                          Intent myIntent = new Intent( Settings.ACTION_LOCATION_SOURCE_SETTINGS );                      
222                      startActivity(myIntent);                            startActivity(myIntent);      
223                  }                  }
224              })              })
225              .create()              .create()
226              .show();                    .show();      
227          }          }
228            
229        }
230            
231            @Override
232            protected void onStart() {
233                    super.onStart();
234                    
235                    Log.e(LOGTAG, "Starting");
236            PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
237            wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "EklLauncher");
238            wakeLock.acquire();
239            
240            //Hvis at tlf rebooter mit i et område uden dækning er det ikke smart at vi skal vente på data
241            //simHandler.sendEmptyMessage(0);
242            web.loadUrl( URL );
243            
244            }
245        
246        void showMessage(String msg) {
247            AlertDialog.Builder builder = new AlertDialog.Builder(this);
248            builder.setMessage(msg)
249            .setPositiveButton("OK", new DialogInterface.OnClickListener() {
250                public void onClick(DialogInterface dialog, int id) {
251                    dialog.dismiss();
252                }
253            })
254            .create()
255            .show();      
256            
257      }      }
258    
259          @Override          @Override
260          protected void onDestroy() {          protected void onStop() {
261                  super.onDestroy();                  
262                  wakeLock.release();          Log.e(LOGTAG, "Stopping");
263            
264                    if (wakeLock != null && wakeLock.isHeld())
265                            wakeLock.release();
266                    
267                    if (!web.getUrl().equals("about:blank"))
268                            web.loadUrl("about:blank");
269                    
270                    super.onStop();
271          }          }
272            
273            static final int RELOAD = 1;
274            static final int FLUSH = 2;
275            static final int EXIT = 3;
276    
277          @Override          @Override
278          public boolean onCreateOptionsMenu(Menu menu) {          public boolean onCreateOptionsMenu(Menu menu) {
279                  MenuItem item;                  MenuItem item;
280                  item = menu.add(0, 1, 0, "Genindlæs side");                  item = menu.add(0, RELOAD, 0, "Genindlæs side");
281                  item.setIcon( R.drawable.ic_menu_refresh );                  item.setIcon( R.drawable.ic_menu_refresh );
282                                    
283                  item = menu.add(0, 2, 0, "Slet cache");                  item = menu.add(0, FLUSH, 0, "Slet cache");
284                  item.setIcon( R.drawable.ic_menu_delete );                  item.setIcon( R.drawable.ic_menu_delete );
285                    
286                    item = menu.add(0, EXIT, 0, "Forlad");
287                    item.setIcon( android.R.drawable.ic_menu_close_clear_cancel);
288                    
289                  return super.onCreateOptionsMenu(menu);                  return super.onCreateOptionsMenu(menu);
290          }          }
291    
292          @Override          @Override
293          public boolean onMenuItemSelected(int featureId, MenuItem item) {          public boolean onMenuItemSelected(int featureId, MenuItem item) {
294                  switch (item.getItemId()) {                  switch (item.getItemId()) {
295                  case 1:                  case RELOAD:
296                          web.reload();                          web.reload();
297                          break;                          break;
298                  case 2:                  case FLUSH:
                         WebStorage.getInstance().deleteAllData();  
299                          web.clearCache(true);                          web.clearCache(true);
300                            
301                            WebStorage.getInstance().deleteAllData();                      
302                            WebStorage.getInstance().deleteOrigin(URL);
303                            
304                          web.reload();                          web.reload();
305                          break;                          break;
306                    case EXIT:                                                      
307                            this.finish();
308                            break;                  
309                  }                  }
310                    
311                  return super.onMenuItemSelected(featureId, item);                  return super.onMenuItemSelected(featureId, item);
312          }          }
313                    

Legend:
Removed from v.1925  
changed lines
  Added in v.1933

  ViewVC Help
Powered by ViewVC 1.1.20