1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

GPS unter 2.2

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Rotesmofa, 17.09.2010.

  1. Rotesmofa, 17.09.2010 #1
    Rotesmofa

    Rotesmofa Threadstarter Fortgeschrittenes Mitglied

    Beiträge:
    279
    Erhaltene Danke:
    20
    Registriert seit:
    08.08.2010
    Hallo Jungs,

    ich starte gerade mit etwas Praxis.

    Ich möchte den GPS Empfänger abhorchen und mit die Daten ausgeben lassen.
    Leider bekomme ich unter Eclipse im Emulator keine Werte(auch wenn ich welche Sende im Location Control Fenster, wobei ich bezweifle dass das was tut).

    Ich habe versucht auf meinem Handy (Samsung Galaxy S) das zeigt aber ebenfalls keine Werte. Meine Vermutung ist, GPS ist nicht aktiv wenn meine Anwendung läuft, aber wie aktiviere ich das denn?

    Gruß
    Rotesmofa

    Tante Edith: Wenn ich von "GPS_PROVIDER" auf das Wifi/Netzbasierte orten wechsle wird mir ein Längen und Breitengrad ausgegeben also auf "NETWORK_PROVIDER". Das bestätigt meinen Verdacht.


    Und hier meine codeschnipsel:

    Code:
    public class gpstest extends Activity {
    	private TextView latituteField;
    	private TextView longitudeField;
    
    	/** Called when the activity is first created. */
    	@Override
    	public void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.main);
    		latituteField = (TextView) findViewById(R.id.TextView02);
    		longitudeField = (TextView) findViewById(R.id.TextView04);
    	}
    
    	public void showLocation(View view) {
    		switch (view.getId()) {
    		case R.id.Button01:
    			LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
    			Location location = locationManager
    					.getLastKnownLocation(LocationManager.GPS_PROVIDER);
    			if (location != null) {
    				int lat = (int) (location.getLatitude());
    				int lng = (int) (location.getLongitude());
    				latituteField.setText(String.valueOf(lat));
    				longitudeField.setText(String.valueOf(lng));
    			} else {
    				latituteField.setText("GPS not available");
    				longitudeField.setText("GPS not available");
    			}
    			break;
    		}
    
    	}
    }
     
    Zuletzt bearbeitet: 17.09.2010
  2. BenOtto, 17.09.2010 #2
    BenOtto

    BenOtto Android-Hilfe.de Mitglied

    Beiträge:
    141
    Erhaltene Danke:
    15
    Registriert seit:
    30.08.2010
    Es gibt mehrere Gründe warum dein Programm nicht funktionieren könnte. Hast du mal in den LogCat geguckt, ob da eine SecurityException geworfen wird? Dann brauchst du im Manifest noch die
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

    Falls dein GPS nicht aktiviert ist, dann bekommst du bei getLastKnownLocation() null zurück. Um das zu aktivieren musst du einen Intent abschicken:
    Code:
    final ComponentName toLaunch = new ComponentName("com.android.settings","com.android.settings.SecuritySettings");
    final Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);intent.addCategory(Intent.CATEGORY_LAUNCHER);
    intent.setComponent(toLaunch);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivityForResult(intent, 0);
    
     
    Rotesmofa bedankt sich.
  3. Rotesmofa, 17.09.2010 #3
    Rotesmofa

    Rotesmofa Threadstarter Fortgeschrittenes Mitglied

    Beiträge:
    279
    Erhaltene Danke:
    20
    Registriert seit:
    08.08.2010
    Die Permission ist gesetzt, aber deinen 2. Tipp werde ich gleich ausprobieren.
     
  4. Rotesmofa, 07.10.2010 #4
    Rotesmofa

    Rotesmofa Threadstarter Fortgeschrittenes Mitglied

    Beiträge:
    279
    Erhaltene Danke:
    20
    Registriert seit:
    08.08.2010
    Auch wenn der Thread schon hier tod rummliegt, Lösung war seeehr einfach.
    Mein gutes Galaxy S hat einfach nie einen Fix bekommen. Mit neuer Beta Firmware läuft alles wunderbar!

    Gruß
    Rotesmofa
     
  5. CoolKiffings, 21.07.2011 #5
    CoolKiffings

    CoolKiffings Android-Hilfe.de Mitglied

    Beiträge:
    71
    Erhaltene Danke:
    4
    Registriert seit:
    15.08.2009
    Hi, ich hab auch grad nen Problem mit dem Settings Intent.
    Bei Sense UI ist die GPS Einstellung nicht mehr unter Sicherheit sondern im anderen Unterpunkt "Ort". Wie bekomme ich es jz hin das er mir bei normalen Android die Sicherheitsseite öffnet und bei Sense UI die Ort Seite?
     

Diese Seite empfehlen