Scripting 2 TUTORIAL EEN APP ONTWIKKELEN VOOR ANDROID MET PROCESSING. ellipse(screenwidth/2, screenheight/2, 140,140); DOOR THIERRY BRANDERHORST



Vergelijkbare documenten
Lesje programmeren. Hallo allemaal, wat fijn dat je er bent. ROBOTICA

Processing. Met Processing kun je hele mooie tekeningen maken niet met stiften of potloden, maar door tegen de computer te zeggen wat je wil zien.

Module Programmeren in Javascript

Chris de Kok TDI 3. Vak: Software Architectuur Datum: Docent: Fons van Kesteren

Opencockpits FMC V3 Handleiding Prosim737

ICARUS Illumina E653BK on Windows 8 (upgraded) how to install USB drivers

Werkomgeving. Android Studio. Android - werkomgeving 1/6

size( 800, 500 ); Canvas = tekenblad 'size' is een woord dat processing herkent om de grootte van het canvas (tekenblad) in te stellen

Functioneel Ontwerp / Wireframes:

LET OP! Lees dit eerst even door!

Online Back-up installatie handleiding. Sikkelstraat VB Oosterhout E: info@winexpertise.nl

QUICK START. IP cam viewer.

Multi user Setup. Firebird database op een windows (server)

Het aansluiten van uw Victron op een computer; met VE Bus Quick Configure

SAMPLE 11 = + 11 = + + Exploring Combinations of Ten + + = = + + = + = = + = = 11. Step Up. Step Ahead

How To: Setup MGE Network Shutdown Module V3 op het service console binnen VMware ESX 3.0.2

Indoor Navigation System

Mobile Device Manager Handleiding voor Windows Mobile Standard en Pro

Installatie Handleiding. Twan Wintjes

Uitgebreide installatie handleiding voor gebruik met Wireless Leiden

Plato gebruikershandleiding

Handleiding Installeren Thuiswerkportaal

Selenium IDE Webdriver. Introductie

Firewall van de Speedtouch 789wl volledig uitschakelen?

MobiDM App Handleiding voor Windows Mobile Standard en Pro

XAMPP Web Development omgeving opzetten onder Windows.

Variabelen en statements in ActionScript



Belevingsdagen Leraar Informatica (BASO) Maak je eigen app! Belevingsdagen Thomas More - Elke Boonen

NSPYRE LEGO MINDSTORMS UITDAGING (JAVA) INLEIDING. DOEL: SIMULATOR:

Illustrator Tutorial - How to Create a Watch

Het handboek van KDE Screen Ruler. Lauri Watts Vertaling van het handboek: Niels Reedijk Vertaler/Nalezer: Alexander S. Koning

Shipment Centre EU Quick Print Client handleiding [NL]

LES 3: XAMPP OF MAMP. Lesoverzicht:

ZorgInlogPortaal.nl. Geachte gebruiker, Handleiding Mijn Virtuele Schijf Versie 2.0

NB Deze lijst is alleen beschikbaar tijdens het project! Alleen voor eigen gebruik, er kunnen geen rechten aan worden ontleend.

Aan de slag. Deze snelgids is voor de ClickToPhone software versie 83 of hoger.

Studietaak 5 Hoe installeer ik software? ProFTPD FTP-Server

Stappenplan, hoe voeg ik mijn IFRAME toe aan Facebook?

WebSite Director Gebruikersgids

SX100 Sending (Handleiding)

Zo draai je Android-apps op de pc

Hoe kan ik extern werken?

DIGITALE MODE MET POWER SDR

Bluetooth Software Update Manual Using an Android Device IVE-W530BT

Programmeren met Arduino-software

Handleiding telewerken GGD Amsterdam

Hoe stel ik mijn favorieten en wachtwoorden veilig met LastPass en Xmarks?

Gebruiksaanwijzing voor het toepassen van de nieuwe Sumatra 2019 stijl

Netwerkprinter Dell 1320C installeren op Ubuntu LTS - Lucid Lynx

HANDLEIDING DVD REBUILDER

Installatie- en gebruikershandleiding Arseus barcode scanner

Handleiding telewerken Windows7

Find Neighbor Polygons in a Layer

Milight 3.0 App installeren en configureren

TAB XENTA 10ic 10 TABLET FIRMWARE UPGRADE INSTRUCTIES

HANDLEIDING VIEW DESKTOP. Handleiding VIEW Desktop. P. de Gooijer. Datum: Versie: 1.3

Installatie SQL: Server 2008R2

Hoe arbeidsovereenkomsten online ondertekenen vanaf januari 2016?

Bijlage I. 2. Kies : Weergave op kleine pictogrammen. 3. Kies Java en de tab General : Kamer van Koophandel Nederland

Updateprocedure. I. Algemeen:

Settings for the C100BRS4 MAC Address Spoofing with cable Internet.

Secure File Sync - Quick Start Guide

Handleiding: CitrixReceiver installeren voor thuisgebruik.

Hoe kan ik extern werken?

(Versie 1.4) THUISWERKPLEK INSTELLEN

Inhoud Handleiding Steam Steam installeren Steam Key Activeren... 6

Om zelf een live stream op te zetten heb je een aantal dingen nodig:

Installatie Today s Pro

Installatie responsbox bij Windows XP en Windows Vista

X. Grafische elementen

VU POINT Camera Toevoegen

Drivers van het internet op je computer installeren

1. Wat heb je nodig? Hoe werkt het? Multifactor authenticatie Verbinding maken... 2

iphone app - Rapporten

De software van de FreeStyle InsuLinx meter moet worden bijgewerkt. Lees dit document door, voordat u begint.

Veelgestelde vragen. over papierloos vergaderen in de gemeenteraad.

Helpt je op weg met de upgrade. Augustus Presentator

Procedure Reset tv-toestellen:

Introductie Workshop. Tom Hufkens Shopmanager Turnhout & Geel tom.hufkens@webstore.be

WELKOM BIJ UNICODING PROCESSING. Unicoding 1. Handleiding docent LES 1 DEEL A: Vormen, coördinaten en kleuren

Uitleg van de Systeeminstellingen in Ubuntu.

THUISWERKPLEK INSTELLEN

DuboCalc 4.0. Installatie instructie

ParkinsonThuis Studie. Installatiehandleiding

Heb je nog geen account maak dit dan aan en koppel je gps aan het account. Zie daarvoor de volgende handleiding.

Aanmeldhandleiding Windows Phone Standard en Pro

Solid Edge Floating licenses. FLEXLM License Manager installatie

AdmInbox. Installatie Scan Plug-in

ICT HANDLEIDING TELEWERKEN. Versie 2010

Linux Quickstart Cygwin via HTTP

ICT HANDLEIDING TELEWERKEN. Versie 2010

DRAADLOZE TV STREAMINGBOX

Android. Smartphones & Tablets. Vergroot uw digitale wereld

Installatie van sqlserver

Download en installatie door de hoofdgebruiker

EVRY ONLINE OP IPHONE EN IPAD

Transcriptie:

Scripting 2 ellipse(screenwidth/2, screenheight/2, 140,140); TUTORIAL EEN APP ONTWIKKELEN VOOR ANDROID MET PROCESSING. DOOR THIERRY BRANDERHORST

ANDROID APPLICATIES Tegenwoordig zijn er duizenden applicaties voor op je telefoon. App s om even kort te noemen. App s zijn hot. Maar wat is het proces om daadwerkelijk een app te kunnen maken. Wat heb je nodig en hoe moet je dit aanpakken? Er zijn tal van manieren om een app te maken. In deze tutorial maken we gebruik van Processing. Het is erg nuttig om mee te zien hoe je een app werkend kan krijgen voor android. Ook in de toekomst om er toch meer inzicht in te krijgen. Om dit proces eens mee te maken is dit een uitgelegen moment om er mee te beginnen. We gaan een app maken voor de android en ik zelf heb getest met een HTC One X android versie 4.1.1. De app die we gaan maken heeft een zwart tekenvlak waarmee je met je vinger kan tekenen. Ook moet er een erase button komen zodra je hier op druk moet je tekening gewist zijn en terug komen op een zwart vlak. In deze tutorial laat ik kort mijn bevindingen zien en hoe ik tot een werkende applicatie ben gekomen. Rechts een klein voorbeeld wat het resultaat zal worden.

SOFTWARE Er zijn een aantal programma s die nodig zijn om een applicatie te kunnen maken. Processing: http://www.processing.org/ Met behulp van Processing kunnen we de tekentool maken. De bottenstructuur als het ware van de applicatie. Processing is hier te downloaden, download de laatste versie die is uitgebracht: http://processing.org/download/ SDK Manager: http://developer.android.com/sdk/index.html Met behulp van dit programma kunnen we de benodigde software installeren voor de verschillende android versies die er bestaan. Zo zit er veel verschil in oudere versies en nieuwe qua mogelijkheden. Het is dus belangrijk om te weten of de app die je wil maken wel compatible is met oude versies van Android. Instructies voor de installatie zijn hier te vinden: http://developer.android.com/sdk/installing/index.html

SOFTWARE Eclipse Met eclipse draaien we via een ADB server een directe connectie met de android telefoon. Hiermee kunnen we via processing applicaties testen op de telefoon. Erg handig dus. Eclipse is hier te downloaden: http://eclipse.org/mobile/ Ook kan je met eclipse een virtuele telefoon instellen om alles via de computer te testen. Zie voor installatie info en instellingen: http://developer.android.com/sdk/installing/installing-adt.html Het is belangrijk dat wanneer je gaat testen op de telefoon, Processing, SDK Manger en Eclipse tegelijk draaien. Deze programma s moeten dus open staan. Voor een volledige tutorial om alle programma s te installeren en in te stellen zie de volgende link: http://processing.org/learning/android/

HTC SYNC USB DRIVERS Omdat ik werk met een HTC One X is het nodig om de usb drivers up te daten zodat ik live kan testen met mijn telefoon. De USB Drivers zitten ingebakken in het programma HTC SYNC. Zie voor download info en instellingen: https://support.htc.com/en Zoek jouw HTC telefoon en installeer HTC Sync. LET OP: Zodra je HTC Sync geinstalleerd hebt zijn de USB Drivers correct geinstalleerd. HTC Sync maakt ook gebruik van een ADB server. Tijdens het ontwikkelen van een applicatie gebruikt Eclipse ook een ADB server. Wanneer HTC Sync en Eclipse beide open staan draaien er ook twee ADB servers. Dit raakt in confliqt. Om dit te voorkomen moet je HTC Sync uitschakelen. Gebruik Taakbeheer/Taskmanager om HTC Sync te beëindigen.

TESTING TESTING Kleine test Open processing en copy paste de volgende code: // Build a container to hold the current rotation of the box float boxrotation = 0; void setup() { // Set the size of the screen (this is not really necessary // in Android mode, but we ll do it anyway) size(480,800); // Turn on smoothing to make everything pretty. smooth(); // Set the fill and stroke color for the box and circle fill(255); stroke(255); // Tell the rectangles to draw from the center point (the default is the TL corner) rectmode(center); void draw() { // Set the background color, which gets more red as we move our finger down the screen. background(mousey * (255.0/800), 100, 0); // Change our box rotation depending on how our finger has moved right-to-left boxrotation += (float) (pmousex - mousex)/100; // Draw the ball-and-stick line(width/2, height/2, mousex, mousey); ellipse(mousex, mousey, 40, 40); // Draw the box pushmatrix(); translate(width/2, height/2); rotate(boxrotation); rect(0,0, 150, 150); popmatrix(); En klik daarna op Run on device. Als het goed is moet je nu op je telefoon een werkende applicatie zien!

SCRIPTEN THE CODE Nu de verbinding is geslaagd en de test goed is gelukt kunnen we beginnen met het schrijven van het script voor de applicatie. LET OP: Zorg ervoor dat we gaan scripten in Android MODE! Dit kan je rechtsboven in Processing wijzigen: Java > Android We beginnen met de Void Setup. void setup() { size(displaywidth, displayheight); background(0); smooth(); Omdat we werken met verschillende telefoons werken we ook met verschillende display s. Size laten we dus bepalen door de display- Width en displayheight. De achtergrond maken zwart en met smooth zorgen we ervoor dat we geen lelijke pixel randen krijgen op onze lijnen. SYMMETRIE LIJNEN Voor het symmetry gedeelte heb ik een openscript gevonden: http://www.openprocessing.org/sketch/91240 void draw() { if (mousepressed && onclearbutton == false) { strokeweight(random(0, 10)); line(mousex, mousey, pmousex, pmousey); line(width-mousex, mousey, width-pmousex, pmousey); line(mousex, height-mousey, pmousex, height-pmousey); line(width-mousex, height-mousey, width-pmousex, height-pmousey); Wanneer je met je vinger het scherm aanraakt teken je een lijn. De andere lijnen zijn zo ingesteld dat het symmetrisch getekend wordt.

SCRIPTEN GEKLEURDE LIJNEN Wanneer de gebruiker zijn vinger los laat en vervolgens weer tekent moet de lijn een andere kleur zijn. Hier voor gaan we een teller instellen. Die houdt bij wanneer de vinger van het scherm is door een nieuwe waar in te stellen. Eerst stellen we de tel waarden in. int counter = 1; En daarna geven we voor het gemak een naam voor de kleuren om tijd te besparen en het overzichtelijker te houden. color red = color(255, 0, 0, random(90, 100)); color green = color(255, 255, 0, random(90, 100)); color blue = color(0, 71, 171, random(90, 100)); color white = color(255, 255, 255, random(90, 100)); Dan maken we de code voor de teller. if (counter == 1) { stroke(red); else if (counter == 2) { stroke(green); else if (counter == 3) { stroke(blue); else if (counter == 4) { stroke(white); void mousepressed() { counter++; // increase the counter if (counter == 5) { counter = 1;

SCRIPTEN CLEAR BUTTON We gaan een rondje maken met daarin de tekst CLEAR. Het rondje wordt grijs met nostroke en de plaatsing is onderaan het scherm in het midden. De tekst komt in het midden van de ellipse. fill(50); nostroke(); ellipse(displaywidth/2, displayheight*0.94, w, h); fill(255); textsize(20); text( CLEAR, displaywidth/2-30, displayheight*0.94+8); Dit is een code die ik gevonden heb op processing forum. Het is aangepast zodat het werkt in ons eigen script. void mousepressed() { if (mousex>x-w/2 && mousex <x+w/2 && mousey>y-h/2 && mousey <y+h/2) { fill(0); background(0); onclearbutton = true; else { onclearbutton = false; Ze deze waardes voor Void Setup. int value=0; float x = 360; float y = 1200; float w = 100; float h = 100; boolean onclearbutton = false; Hiermee geven we boundry s aan van de clear button. Als er daadwerkelijk op de button wordt gedrukt krijg je een nieuw zwart tekenveld.

VOLLEDIGE CODE CODE int value = 0; color red = color(255, 0, 0, random(90, 100)); color green = color(255, 255, 0, random(90, 100)); color blue = color(0, 71, 171, random(90, 100)); color white = color(255, 255, 255, random(90, 100)); int counter = 1; float x = 360; float y = 1200; float w = 100; float h = 100; boolean onclearbutton = false; void setup() { size(displaywidth, displayheight); background(0); smooth(); void draw() { nostroke(); if (counter == 1) { stroke(red); else if (counter == 2) { stroke(green); else if (counter == 3) { stroke(blue); else if (counter == 4) { stroke(white); if (mousepressed && onclearbutton == false) { strokeweight(random(0, 10)); line(mousex, mousey, pmousex, pmousey); line(width-mousex, mousey, width-pmousex, pmousey); line(mousex, height-mousey, pmousex, height-pmousey); line(width-mousex, height-mousey, width-pmousex, height-pmousey); fill(50); nostroke(); ellipse(displaywidth/2, displayheight*0.94, w, h); fill(255); textsize(20); text( CLEAR, displaywidth/2-30, displayheight*0.94+8); void mousepressed() { counter++; // increase the counter if (counter == 5) { counter = 1; if (mousex>x-w/2 && mousex <x+w/2 && mousey>y-h/2 && mousey <y+h/2) { fill(0); background(0); onclearbutton = true; else { onclearbutton = false;

THAT S IT SYMMETRY ART We hebben een symmetrische teken applicatie! Wanneer je elke keer test op je telefoon maakt Processing automatisch een applicatie aan op je telefoon. Als je de telefoon los koppelt van de computer staat er een werkende applicatie tussen je andere app s. Super tof toch!? Nu kan je uiteraard ook zelf een leuk script gaan schrijven aangezien de verbinding van je telefoon met processing nu kloppend is. Dit was even een kort inzicht hoe je met processing een applicatie kan maken voor Android telefoons. Succes!