Stap 4: Het leuke gedeelte
Voor de mensen die weten van Arduino, Android-codering is een beetje moeilijker maar niet al te slecht, krijg je de knie behoorlijk snel. Hier is de traditionele "hello world" applicatie voor IOIO en Android. Lees de code samen met de opmerkingen in het Vet cursief en krijg je de gist.
pakket ioio.examples.hello;
invoer ioio.examples.hello.R;
invoer ioio.lib.api.DigitalOutput;
invoer ioio.lib.api.exception.ConnectionLostException;
invoer ioio.lib.util.AbstractIOIOActivity;
invoer android.os.Bundle;
invoer android.widget.ToggleButton;
/**
* Dit is de hoofdactiviteit van de HelloIOIO-voorbeeldapplicatie.
*
* Een wisselknop wordt weergegeven op het scherm, waarmee de controle van de
* on-board LED. In het volgende voorbeeld toont een heel eenvoudig gebruik van de IOIO, met behulp van
* de klasse {AbstractIOIOActivity}. Zie voor een meer geavanceerde use-case, de
* HelloIOIOPower voorbeeld.
*/
openbare klasse MainActivity breidt AbstractIOIOActivity {}
privé ToggleButton button_;
/**
* Aangeroepen wanneer de activiteit voor het eerst wordt gemaakt. Hier initialiseren we normaal
* our GUI.
*/
openbare void onCreate (bundel savedInstanceState) {}
Super.onCreate(savedInstanceState); //all android app hebben deze regel, net zorg ervoor dat het er en maak je geen zorgen over het
setContentView (R.layout. belangrijkste); //in android, de schermindeling komt uit een XML-bestand u nader, main.xml hier
button_ = (ToggleButton) findViewById (R.id. knop);
}
/**
* Dit is de draad die op die alle de IOIO activiteit gebeurt. Het zal worden uitgevoerd
* elke keer dat de toepassing wordt hervat en afgebroken als deze is onderbroken. De
* methode Setup wordt aangeroepen nadat een verbinding met de IOIO heeft
* is gevestigd (die kan gebeuren meerdere keren!). Vervolgens loop zal
* herhaaldelijk genoemd worden, totdat de IOIO wordt verbroken.
*/
klasse IOIOThread breidt AbstractIOIOActivity.IOIOThread {}
/ ** De on-board LED. */
privé DigitalOutput led_;
/**
* Genaamd telkens een verbinding met IOIO is opgezet.
* Meestal gebruikt voor het openen van de pinnen.
*
* ConnectionLostException
* Wanneer IOIO verbinding wordt verbroken.
*
* ioio.lib.util.AbstractIOIOActivity.IOIOThread#setup()
*/
beschermd void Setup gooit ConnectionLostException {}
led_ = ioio_.openDigitalOutput (0, true);
}
/**
* Herhaaldelijk genoemd, terwijl de IOIO is verbonden.
*
* ConnectionLostException
* Wanneer IOIO verbinding wordt verbroken.
*
* ioio.lib.util.AbstractIOIOActivity.IOIOThread#loop()
*/
beschermd void loop gooit ConnectionLostException {}
led_.write(!button_.isChecked());
Probeer {
Sleep(100);
} vangst (InterruptedException e) {}
}
}
}
/**
* Een methode maken onze draad IOIO.
*
* ioio.lib.util.AbstractIOIOActivity#createIOIOThread()
*/
beschermd AbstractIOIOActivity.IOIOThread createIOIOThread() {}
retourneren nieuwe IOIOThread();
}
}