Introducing
Your new presentation assistant.
Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.
Trending searches
* Intercepta eventos do sistema operacional e/ou lançados por sua aplicação;
* E se? ...
public class MainActivity extends ActionBarActivity
implements SensorEventListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
SensorManager s = (SensorManager)
getSystemService
(Context.SENSOR_SERVICE);
s.registerListener(this, s.getDefaultSensor(Sensor.TYPE_LIGHT), SensorManager.SENSOR_DELAY_NORMAL);
}
@Override
public void onSensorChanged(
SensorEvent sensorEvent) {}
public void paraMidia(){}
public void tocaMidia(){}
public void onAccuracyChanged(
Sensor sensor, int i) {}
* Android é Linux;
* Logo tem um SHELL;
* Através do ADB (Android Debug Bridge) podemos acessar este shell;
* Vamos brincar um pouco:
$ adb shell
am start -a android.intent.action.CALL -d tel://12345678
public class MainActivity extends ActionBarActivity
implements SensorEventListener{
...
@Override
public void onSensorChanged(
SensorEvent sensorEvent) {
float[] leitura = sensorEvent.values;
if (leitura[0] < 15){
tocaMidia();
} else {
paraMidia();
}
}
public void paraMidia(){}
public void tocaMidia(){}
* E se esta linha se aplicasse a todos os contatos? É possível?
Controlando Android remotamente;
* Content Provider: espécie de banco de dados relacional;
* Possibilidade de mudança nas propriedades de contatos;
* E se?
* https://github.com/ricardoogliari/ExplosaoCaboEnergia
* Mensagens de Texto;
Grilho fantasma
https://github.com/ricardoogliari/GrilhoFantasma
* E se configurar para uma mídia que não existe:
ContentValues cv = new ContentValues();
values.put(ContactsContract.Data.CUSTOM_RINGTONE, "eunaotenhoessamidia");
getContentResolver().update(ContactsContract.Contacts.CONTENT_URI, cv , "DISPLAY_NAME = 'nome'", null);
am start -a android.intent.action.SEND -d "mensagem" -t text/plain
am start -a android.intent.action.VIEW -d geo:0,0?q=Tokyo
adb shell am start -a android.intent.action.VIEW -d "http://developer.android.com"
https://github.com/ricardoogliari/UsandoAdbShell
* rogliariping@gmail.com
* @mobilidadetudo
* github.com/ricardoogliari
* http://mobilebrazilconference.com.br/
* AndroidManifest.xml
<receiver android:name=".Explode">
<intent-filter>
<action android:name="android.intent.action.ACTION_POWER_CONNECTED"/>
</intent-filter>
</receiver>
* Classe Java
public class Explode extends BroadcastReceiver{
public void onReceive(Context context, Intent intent) {
MediaPlayer mp = MediaPlayer.create(context, R.drawable.explosao);
mp.start();
}
}
Pais
Motivação;
* Alvos claros;
* Seguintes frases:
- Precido acordar cedo para estudar;
- Preciso acordar cedo para hacker o facebook;
* Ricardo Ogliari;
* Co-autor do livro Android: do Básico ao Avançado;
* +- 290 publicações;
* FIAP, Globalcode e BTCJam;
* Fundador THT;
* 10 nomes open-hardware;
Sogras!!!