Итак, я сделал этот кусок кода, чтобы получить значения местоположения, даты и времени GPS.А потом я постараюсь сделать их в формате JSON и отправить их через Wi-Fi на сервер.В любом случае, проблема в том, что он всегда читает предыдущие значения местоположения.Он всегда считывает значения из «Сетевой» части JSON, предоставленной предыдущими значениями.Текущее местоположение напечатано только в двух скобках "{}", как вы можете видеть, если вы запускаете код.
Значок GPS на телефоне не активируется, когда я запускаю скрипт непосредственно с телефона.Я думаю, что код не требует пояснений, но если есть какие-либо вопросы, пожалуйста, задавайте.
import android,time,datetime
droid = android.Android()
latitudine = "initial value"
longitudine = "initial value"
indexVal = 1
lostSignal = False
while True:
print "~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~\nNew reading: #" + str(indexVal) +"\n"
droid.startLocating()
locatie = droid.readLocation().result
droid.stopLocating()
print "Reading result: " + str(locatie)
if locatie == {}:
print "Current location information not available"
locatie=droid.getLastKnownLocation().result
if locatie != {}:
if locatie['gps'] == None:
if locatie['network'] == {}:
latitudine = str(locatie['passive']['latitude'])
longitudine = str(locatie['passive']['longitude'])
print "Reading passive data (from last known location):"
print longitudine
print latitudine
lostSignal = True
elif locatie['network'] != {}:
latitudine = str(locatie['network']['latitude'])
longitudine = str(locatie['network']['longitude'])
print "Reading data from network:"
print latitudine
print longitudine
lostSignal = True
elif locatie['gps']!=None:
if lostSignal == True:
droid.vibrate(500)
lostSignal = False
latitudine=str(locatie['gps']['latitude'])
longitudine=str(locatie['gps']['longitude'])
print "Reading data from GPS:"
print latitudine
print longitudine
droid.notify("GPS found","GPS signal found.\nData aquired")
print "\nFull available information:\n"
for locInfo in locatie.iteritems():
print str(locInfo)
print "\n"
now = datetime.datetime.now()
ora = now.hour
minut = now.minute
secunda = now.second
ziua = now.day
luna = now.month
an = now.year
print str(ora)+":"+str(minut)+":"+str(secunda)+" / "+str(ziua)+"-"+str(luna)+"-"+str(an)
indexVal += 1
time.sleep(20)