• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

String (Length Abfrage) Fehler bei Android Apps ?

jonny65

Geomaster
Hallo, einmal wenn ich mit LUA rumpfusche, knallts auch schon *lol*. Aber NUR bei Android ! Garmin, iPhone und Simulator funktionieren tadellos, genauso wies sein soll, also Anzeige des Timestamps einer SMS nach dem Muster "8.4.2013 19:08". Damit nicht "8.4.2013 19:8" angezeigt wird, hab ich eine Lenghth Abfrage drin und genau hier scheint der Fehler zu sein (siehe Snapshot).Kann das jemand bestätigen und/oder findet hier einen Fehler ? Ahja die Variable "SMS1Timestamp" ist als String deklariert mit automatischem Identifier, da ich die Variable ja nicht in der Funktion benutze.

Code:
function Timestamp()
   local Now=os.date("*t")
      if string.len(Now.min)==1 then
         Now.min="0"..Now.min
      end	
   local Zeitausgabe=Now.day.."."..Now.month.."."..Now.year.." "..Now.hour..":"..Now.min.." Uhr"
   return Zeitausgabe
end

TimestampFehler.jpg
Screenshot_2013-04-07-21-21-06.jpg
 

Charlenni

Geomaster
Ich mache jetzt mal einen Schuß ins Blaue aus dem Kopf.

os.date liefert die Tabelle Now zurück, die nur Zahlen entählt. Also ist Now.min eine Zahl. Da OpenWIG kein komplettes Lua implementiert (keine Compiler) und sich auch sonst etwas anders verhält, wird hier keine automatische Konvertierung in einen String vorgenommen.

Wenn Du also statt
Code:
string.len(Now.min)
besser
Code:
string.len(tosstring(Now.min))
oder
Code:
string.len(""..Now.min)
nimmst, dann sollte es auch keinen Fehler mehr geben.

Es sollte auch so
Code:
function Timestamp()
   local Now=os.date("*t")
   return string.format("%02d.%02d.%4d %02d:%02d Uhr", Now.day, Now.month, Now.year, Now.hour, Now.min)
end
gehen.
 
OP
J

jonny65

Geomaster
Danke Dirk. Hab ein kleines Beispiel, das Timestamps erzeugt. Einmal mit Urwigo Datum/Zeit Bausteinen, einmal Lua (mit Bug?), einmal mit Charlennis Fix "tostring". Demnach müsste nur beim Item "SMS_Lua" der Fehler kommen...und wie gesagt nur bei Android Smartphones. Falls jemand das mal abcheckern könnte ?
Die GWC kommt nicht aus Urwigo, sondern ich hab sie über wherigo.com gejagd. Nicht daß hier noch was im Argen liegt und die Compiler Urwigo<>Wherigo.com hier anders reagieren.
Würde mir ja nix nutzen wenns per Urwigo gehen würde.
 

Anhänge

  • stringtest.zip
    11,3 KB · Aufrufe: 4

xxmurdockxx

Geomaster
Hi,

gerade unter Android gecheckt.
Lua_fix klappt.
Urwigo auch
Lua nicht.

lua_1.png
lua_2.png
lua_3.png
 

Charlenni

Geomaster
Aber aufpassen. Wie in den Screenshots zu sehen ist, unterscheidet sich die Uhrzeit auf dem Phone und die Uhrzeit, die angezeigt wird, um 2 Stunden. (aktuelle Sommerzeit zu GMT).
 
Oben