Guest User

androidpythongps

a guest
Apr 22nd, 2015
1,349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.74 KB | None | 0 0
  1. # import needed modules
  2. import android
  3. import time
  4. import sys, select, os #for loop exit
  5.  
  6. #Initiate android-module
  7. droid = android.Android()
  8.  
  9. #notify me
  10. droid.makeToast("fetching GPS data")
  11.  
  12. print("start gps-sensor...")
  13. droid.startLocating()
  14.  
  15. while True:
  16.     #exit loop hook
  17.     if sys.stdin in select.select([sys.stdin], [], [], 0)[0]:
  18.         line = input()
  19.         print("exit endless loop...")
  20.         break
  21.  
  22.     #wait for location-event
  23.     event = droid.eventWaitFor('location',10000).result
  24.     if event['name'] == "location":
  25.         try:
  26.             #try to get gps location data
  27.             timestamp = repr(event['data']['gps']['time'])
  28.             longitude = repr(event['data']['gps']['longitude'])
  29.             latitude = repr(event['data']['gps']['latitude'])
  30.             altitude = repr(event['data']['gps']['altitude'])
  31.             speed = repr(event['data']['gps']['speed'])
  32.             accuracy = repr(event['data']['gps']['accuracy'])
  33.             loctype = "gps"
  34.         except KeyError:
  35.             #if no gps data, get the network location instead (inaccurate)
  36.             timestamp = repr(event['data']['network']['time'])
  37.             longitude = repr(event['data']['network']['longitude'])
  38.             latitude = repr(event['data']['network']['latitude'])
  39.             altitude = repr(event['data']['network']['altitude'])
  40.             speed = repr(event['data']['network']['speed'])
  41.             accuracy = repr(event['data']['network']['accuracy'])
  42.             loctype = "net"
  43.  
  44.         data = loctype + ";" + timestamp + ";" + longitude + ";" + latitude + ";" + altitude + ";" + speed + ";" + accuracy
  45.  
  46.     print(data) #logging
  47.     time.sleep(5) #wait for 5 seconds
  48.  
  49. print("stop gps-sensor...")
  50. droid.stopLocating()
Advertisement
Add Comment
Please, Sign In to add comment