JohaB
- Forum-Beiträge: 6
31.10.2013, 12:12:04 via Website
31.10.2013 12:12:04 via Website
Hallo,
Ich habe vor einer Woche oder so angefangen mal aus Spaß für Android zu programmieren. Da ich vorher Python programmiert hab und auch die ein oder andere Java Erfahrung hab, fiel mir das nicht ganz so schwer.
Zum ersten Test hab ich eine View mit 3 Buttons. 2 der 3 Buttons tun was sie sollen. Der Dritte Button soll beim drücken die aktuellen GPS Coordinaten abfragen.
Hier mein Code dafür:
Das führt immer zu einer Nullpointer Exception, an der Stelle an der ich den Längengrad abfrage, also bei loc.getLongitude()
Ich weiss nicht ob ich den Listener brauche, denn ich will ja eigentlich gar nicht das die Koordinaten ständig abgefragt werden, nur beim betätigen des Buttons einmal.
Auf dem echten Handy fiel mir dann auch auf das das GPS symbol dabei nicht da ist. Bei maps, oder anderen apps die GPS verwenden geht immer die Anzeige dafür an. Hier aber nicht. Muss ich das irgendwie im code quasi initialisieren damit der Adapter überhaupt aktiv ist?
Also, nicht falsch verstehen, GPS hatte ich ein geschaltet. Die nötigen Rechte sollten auch gesetzt sein. Ich schätze hier kommt einfach nur der Umstand hinzu das ich das nur seit einer Woche mache
Ich wär euch für jede Hilfe dankbar.
Ich habe vor einer Woche oder so angefangen mal aus Spaß für Android zu programmieren. Da ich vorher Python programmiert hab und auch die ein oder andere Java Erfahrung hab, fiel mir das nicht ganz so schwer.
Zum ersten Test hab ich eine View mit 3 Buttons. 2 der 3 Buttons tun was sie sollen. Der Dritte Button soll beim drücken die aktuellen GPS Coordinaten abfragen.
Hier mein Code dafür:
1if (v == gpsButton)
2 {
3 LocationManager lm;
4 Criteria c=new Criteria();
5 lm=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
6 String provider=lm.getBestProvider(c, false);
7 Location loc = lm.getLastKnownLocation(provider);
8 Double lat,lon;
9 try
10 {
11 lon = loc.getLongitude();
12 lat = loc.getLatitude();
13 TextView test_text = (TextView)findViewById(R.id.Time_textview);
14 test_text.setText(String.valueOf(lon));
15 TextView test2_text = (TextView)findViewById(R.id.Time_textview);
16 test2_text.setText(String.valueOf(lat));
17 }
18 catch (NullPointerException e)
19 {
20 e.printStackTrace();
21 }
2 {
3 LocationManager lm;
4 Criteria c=new Criteria();
5 lm=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
6 String provider=lm.getBestProvider(c, false);
7 Location loc = lm.getLastKnownLocation(provider);
8 Double lat,lon;
9 try
10 {
11 lon = loc.getLongitude();
12 lat = loc.getLatitude();
13 TextView test_text = (TextView)findViewById(R.id.Time_textview);
14 test_text.setText(String.valueOf(lon));
15 TextView test2_text = (TextView)findViewById(R.id.Time_textview);
16 test2_text.setText(String.valueOf(lat));
17 }
18 catch (NullPointerException e)
19 {
20 e.printStackTrace();
21 }
Das führt immer zu einer Nullpointer Exception, an der Stelle an der ich den Längengrad abfrage, also bei loc.getLongitude()
Ich weiss nicht ob ich den Listener brauche, denn ich will ja eigentlich gar nicht das die Koordinaten ständig abgefragt werden, nur beim betätigen des Buttons einmal.
Auf dem echten Handy fiel mir dann auch auf das das GPS symbol dabei nicht da ist. Bei maps, oder anderen apps die GPS verwenden geht immer die Anzeige dafür an. Hier aber nicht. Muss ich das irgendwie im code quasi initialisieren damit der Adapter überhaupt aktiv ist?
Also, nicht falsch verstehen, GPS hatte ich ein geschaltet. Die nötigen Rechte sollten auch gesetzt sein. Ich schätze hier kommt einfach nur der Umstand hinzu das ich das nur seit einer Woche mache
Ich wär euch für jede Hilfe dankbar.
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.