Mapas e Sensores Ricardo da Silva Ogliari Instrutor Android Globalcode Globalcode – Open4education
Eu 8 anos de Mobile + de 150 publicações...
Globalcode – Open4education
Agenda Introdução Como Usar - Mapas Controles Mudas de Posição Cercas Eletrônicas Chave de Ouro Como Usar - Sensores
Globalcode – Open4education
Introdução Aplicativos mobile já não são novidades; É preciso de destacar! Aplicativos sensíveis à localização; Aplicativos sensíveis ao contexto; Aplicativos inteligentes, servindo ao usuário
Globalcode – Open4education
Como Usar * Gerar API KEY do Google Maps com o MD5 da chave do App – htttp://developers.google.com/maps/document ation/android/maps-api-signup * keytool -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android
* A saída será algo assim: 94:1E:43:49:87:73:BB:E6:A6:88:D7:20:F1:8E:B5:98
Globalcode – Open4education
Como Usar
Globalcode – Open4education
Como Usar MapView <?xml version="1.0" encoding="utf-8"?> <com.google.android.maps.MapView android:id="@+id/mapview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" android:apiKey="0qeeeQBPSh...1xP98Mw" />
Globalcode â&#x20AC;&#x201C; Open4education
Como Usar MapActivity –
Classe Activity
isRouteDisplayed
Globalcode – Open4education
Globalcode â&#x20AC;&#x201C; Open4education
Controles Modo de Visualização mapView.setSatellite(true); mapView.setStreetView(true); Controle de Zoom Automático mapView.setBuiltInZoomControls(true); Controle de Zoom código mapController.setZoom(1); Ponto central do Mapa mapController.animateTo(Geopoint); Globalcode – Open4education
Mudanças de Posição LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location loc) { usaNovaPosicao(location); } public void onStatusChanged(String provider, int status, Bundle extras) {} public void onProviderEnabled(String provider) {} public void onProviderDisabled(String provider) {}
};
Globalcode – Open4education
Mudanças de Posição LocationManager.requestLocationUpdates
manager.requestLocationUpdates( PROVIDER, TEMPO MÍNIMO, DISTÂNCIA MÍNIMA, locationListener); manager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 200, 50, locationListener); Globalcode – Open4education
Cercas Eletrônicas LocationManager.addProximityListener Intent intent = new Intent(this,Tela.class); intent.putExtra( LocationManager.KEY_PROXIMITY_ENTERING,true) PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent, 0); manager.addProximityAlert(-27.596667, -48.549167, 50000, 1000000, pIntent); Globalcode – Open4education
Chave de Ouro Geocoder Recupera endereço; geocoder.getFromLocation(latitude, longitude, 1); Recupera posição; geocoder.getFromLocationName(“Avenida Xyz, 234, São Paulo, Brasil”, 1);
Globalcode – Open4education
Sensores Implementar SensorEventListener Sobrescrever onAccuracyChanged Sobrescrever onSensorChanged(SensorEvent) Tratar do vetor de float
Globalcode â&#x20AC;&#x201C; Open4education
Sensores public class Teste extends Activity implements SensorEventListener{ public void onCreate(Bundle savedInstanceState) { SensorManager sm = (SensorManager)getSystemService( Context.SENSOR_SERVICE); sm.registerListener(this, sm.getDefaultSensor(Sensor.TYPE_LIGHT), SensorManager.SENSOR_DELAY_NORMAL); } public void onAccuracyChanged(Sensor sensor, int accuracy) {} public void onSensorChanged(SensorEvent event) { float maximumRange = event.sensor.getMaximumRange(); if (valores[0] < maximumRange/10){ //tocasom } else { //pausasom } } Globalcode â&#x20AC;&#x201C; Open4education }
DĂ&#x161;VIDAS / MUITO OBRIGADO @mobilidadetudo rogliariping@gmail.com http://www.mobilidadetudo.com http://itweb.com.br/blog/mobilidade-e-tudo/ http://www.devmedia.com.br/revista-mobile-magazine http://www.revista.espiritolivre.org/
Globalcode â&#x20AC;&#x201C; Open4education