Brainfact.de All about IT

3Nov/110

Android – GPS Verwenden

Heute möchte ich kurz vorstellen wie leicht man GPS in einer Android-APP verwenden kann. Zunächst ist wichtig, dass bei der APP die entsprechenden Permissions gesetzt sind, sodass sie auf das GPS zugreifen können. Dann habe ich mir folgende Klasse gebastelt:

/**
 * Simple Android GPS Usage Example
 */
public class AndroidGPS {
	// location manager
	private LocationManager lManager;
 
	// listener
	private LocationListener lListener;
 
	// saves last location
	private Location lastLocation;
 
	// update at least every x seconds
	private static int UPDATE_INTERVAL = 20;
 
	// update at least every x meters
	private static int UPDATE_DIST = 1000;
 
	/**
	 * Startup GPS Tracking
	 */
	public void init() {
		// init location Updater
		lManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
		lListener = new GPSLocListener();
 
		lManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, UPDATE_INTERVAL * 1000, UPDATE_DIST, lListener);
		saveLocation(lManager.getLastKnownLocation(LocationManager.GPS_PROVIDER));
	}
 
	/**
	 * Location manager class
	 */
	private final class GPSLocListener implements LocationListener {
 
		public void onLocationChanged(Location location) {
			saveLocation(location);
		}
 
		public void onProviderDisabled(String provider) {
			// 
		}
 
		public void onProviderEnabled(String provider) {
			//		
		}
 
		public void onStatusChanged(String provider, int status, Bundle extras) {
			//
		}
 
	}
 
	/**
	 * Save a location
	 */
	private void saveLocation(Location l) {
		lastLocation = l;
	}
 
	/**
	 * Returns last known location
	 */
	public Location getLocation() {
		return lastLocation;
	}
 
}

Ist eigentlich ziemlich selbsterklärend. Diese Klasse zu verwenden ist nicht schwer:

// Klasse initialisieren
AndroidGPS g = new AndroidGPS();
g.init();
 
// in einem timer zB
Location = g.getLocation();
// .. irgendwas damit machen

Ich hoffe ihr könnt damit was anfangen 😉

2Nov/110

EA – Guter Wille aber dennoch keine besserung?

Moin Moin,

viele von euch haben in den letzten Tagen ja sicherlich den "Spyware Skandal" von Electronic Arts bzw. Origin mitbekommen. Denn durch die Bestätigung der EULA von Origin berechtigt man die Software quasie alles auf dem PC durchsuchen zu dürfen, und das macht das Programm auch.... Ein Arbeitskollege von mir hat sich das Ganze mal etwas näher angeschaut und überprüft was denn da so durchsucht wird. Darunter waren sämtliche private Dokumente (Word Dokumente, Bilder, Musik,....), das Ganze wurde nicht nur durchsucht sondern auch an Origin übertragen. Was der oberhammer an dem ganzen ist das dieser EULA Artikel nach Deutschem Recht eigentlich unzulässig ist, somit ist es meiner Meinung nach nur noch eine Frage der Zeit bis das Spiel komplett verboten wird oder EA ordentlich zur Kasse gebeten wird.

Diese "Daten Durchsucherrei" wirkt sich natürlich negativ auf die Meinung der Kunden aus. Und ich muss sagen ich habe selten ein Game mit so schlechten Amazon Rezensionen gesehen 😀

Screenshot von den Amazon Rezensionen

Screenshot von den Amazon Rezensionen

EA hat versucht auf das ganze einzugehen allerdings ohne Erfolge. Die EULA wurde wieder abgeändert. Aber anstatt den Artikel raus zu nehmen hat man eigentlich nur hinzu ergänzt das es sich nicht um Spyware handeln würde, EA die Daten nur für interne Zwecke verwenden wird und die Daten keinesfalls an Dritte weitergibt. Es wahrscheinlich nur noch eine Frage der Zeit bis sich da eine gewisse Aktivistengruppe einschaltet.

Da fragt man sich, kann man sich dagegen wehren? Ja über Umwege aber nicht ganz... Und zwar kann man das ganze in einer Sandbox laufen lassen und die Dateizugriffsrechte so einschränken das nur noch auf die Spieledateien zugegriffen werden kann. Ich habe dazu einige Howtos gelesen aber bei keinem wurde die Registry richtig geschützt, dies kann man allerdings machen indem man das Game in der Sandbox über einen anderen User laufen lässt und die Berechtigungen in der Registry (regedit) für fast alles außer die EA Schlüssel auf Verweigern setzt (natürlich nur für den User).

Was ist eure Meinung zu dem ganzen? Teilt Sie uns doch über die Kommentare mit 🙂

Hier noch zwei interessante Artikel auf Gamestar:

Analyse der Eula durch einen Rechtsanwalt

Absichern gegen den Datenklau mit Sandboxie und Firewall Einstellungen

!Update:
Die Gruppe Razor 1911 hat Origin ausgehebelt, man hat nun die Möglichkeit das Spiel mit einer modifizierten .exe zu starten mit der Origin umgangen werden kann (Quelle: gulli)