source: other-projects/tipple-android/tipple-ar/tipple-standalone-hpg/src/org/greenstone/android/tipple/base/ARActivity.java@ 26528

Last change on this file since 26528 was 26528, checked in by davidb, 11 years ago

Code developed by the Tipple-AR Smoke and Mirrors team, based on the main tipple trunk

File size: 3.2 KB
Line 
1package org.greenstone.android.tipple.base;
2
3import java.util.Timer;
4import java.util.TimerTask;
5import android.app.Activity;
6import android.content.Context;
7import android.location.Criteria;
8import android.location.Location;
9import android.location.LocationManager;
10import android.os.Bundle;
11import android.view.Display;
12import android.view.KeyEvent;
13import android.view.Window;
14import android.view.ViewGroup.LayoutParams;
15import android.view.WindowManager;
16
17public class ARActivity extends Activity {
18
19 Timer timer;
20 TimerTask redrawTask;
21 AROverlay arOverlay;
22 public static boolean directionss = false;
23 ArDirection direction;
24 //Context con;
25
26 @Override
27 public void onCreate(Bundle savedInstanceState) {
28 super.onCreate(savedInstanceState);
29 System.err.println("*** ARActivity::onCreate()");
30 requestWindowFeature(Window.FEATURE_NO_TITLE);
31 getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
32
33 timer = new Timer();
34
35 initViews();
36 }
37
38 @Override
39 protected void onDestroy() {
40 super.onDestroy();
41 System.err.println("*** ARActivitly::onDestroy()");
42 }
43
44 private void initViews() {
45 CameraPreview cameraPreview = new CameraPreview(this);
46 arOverlay = new AROverlay(this);
47 setContentView(cameraPreview);
48 addContentView(arOverlay, new LayoutParams(LayoutParams.WRAP_CONTENT,
49 LayoutParams.WRAP_CONTENT));
50 Display display = getWindowManager().getDefaultDisplay();
51 direction = new ArDirection(this, display);
52 addContentView(direction, new LayoutParams(LayoutParams.WRAP_CONTENT,
53 LayoutParams.WRAP_CONTENT));
54
55 directionss = true;
56 }
57
58 @Override
59 protected void onStart() {
60 super.onStart();
61 System.err.println("*** ARActivity.onStart()");
62 }
63
64 @Override
65 protected void onStop() {
66 super.onStop();
67 System.err.println("*** ARActivity.onStop()");
68 }
69
70 @Override
71 protected void onResume() {
72 super.onResume();
73 System.err.println("*** ARActivity::onResume()");
74
75 redrawTask = new TimerTask() {
76 @Override
77 public void run() {
78 arOverlay.postInvalidate();
79 }
80 };
81 timer.schedule(redrawTask, 100, 100);
82
83 SensorFusion.getInstance().addClient("ARActivity");
84 LocationFusion.getInstance().addClient("ARActivity");
85 }
86
87 @Override
88 protected void onPause() {
89 super.onPause();
90 System.err.println("*** ARActivity::onPause()");
91
92 redrawTask.cancel();
93
94 SensorFusion.getInstance().removeClient("ARActivity");
95 LocationFusion.getInstance().removeClient("ARActivity");
96 }
97
98 @Override
99 public boolean onKeyDown(int keyCode, android.view.KeyEvent event) {
100 if (keyCode == KeyEvent.KEYCODE_MENU) {
101 if (LocationFusion.getInstance().lastKnownLocation == null) {
102 System.err.println("Can't add location: no GPS");
103 } else {
104 //Global.locations.add(Global.fixedLocation(LocationFusion.getInstance().lastKnownLocation));
105 Global.locations.add(Global.randomLocation(LocationFusion.getInstance().lastKnownLocation));
106 }
107 return true;
108 } else if (keyCode == KeyEvent.KEYCODE_SEARCH) {
109 if (LocationFusion.getInstance().lastKnownLocation == null) {
110 System.err.println("Can't add location: no GPS");
111 } else {
112 Global.locations.add(Global.makeTipLocation(LocationFusion.getInstance().lastKnownLocation));
113 }
114 return true;
115 } else if (keyCode == KeyEvent.KEYCODE_BACK) {
116 finish();
117 }
118 return false;
119 }
120}
Note: See TracBrowser for help on using the repository browser.