Voer daarna flutter pub get uit in je terminal
Gebruik
Het gebruik is erg simpel. Importeer het package en run: Rick.rrrr(); Moeilijker dan dat wordt het niet om een easter egg toe te voegen aan je app.
Gaimon
Toen ik verschillende Haptic Feedback packages onderzocht, stuitte ik op Flutter Gaimon. Gaimon is een package om op een simpele manier Haptic Feedback toe te voegen aan je app. Het ondersteunt verschillende basis acties in een gemakkelijke manier. Dit maakt het toevoegen van haptic feedback gemakkelijk en snel!
Dit package ondersteunt zelfs custom patterns zodat je je eigen Haptic Feedback patronen kan ontwerpen! Maar…
Ahap ondersteuning voor Android
… helaas, Gaimon had nog geen ondersteuning voor custom patronen in Android! Voor een ander app project wilde ik erg graag toegang tot deze custom patronen voor haptic feedback, en met voorkeur zou deze op dezelfde manier moeten werken en voelen op alle telefoons.
De auteur van het package vroeg om hulp voor het ondersteunen van deze custom patronen in Android, en dit voelde voor mij als een Batman styled lichtstraal, die me roept om bij te dragen aan dit package. Ik wilde immers toch toegang tot deze functionaliteit, dus waarom zou ik het dan niet in een public space bouwen zodat nog meer mensen er gebruik van kunnen maken?
Wat is een AHAP
.ahap is een bestandsformaat wat haptic feedback specificeer, en is een afkorting voor Apple Haptic and Audio Pattern. Ontworpen door Apple, specifiek voor het besturen van Haptic Feedback op Apple apparaten. Het is dus logisch dat het fantastisch werkt op iPhones.
Android is compleet andere koek. Aangezien zelfs de motor in de apparaten volledig anders werkt (een tikkende t.o.v. een roterende motor), is het aanroepen van de motor ook compleet anders.
Gelukkig is de documentatie van de .ahap standaard erg duidelijk. Door deze documentatie goed door te nemen was ik in staat om een aantal van de details van de .ahap specificatie om te zetten in een Waveform met timings en amplitudes. Dit zorgt voor een vergelijkbare ervaring, je kon in ieder geval de meeste .ahap files herkennen in vergelijking met dezelfde .ahap file op een iPhone.
Voor het afronden van het pull request op Github had ik al wat tractie gecreëerd voor deze nieuwe feature! De maker van het Gaimon package was snel met het bekijken van de pull request en het mergen ervan.
Er zijn nog wat extra features die we in een latere iteratie willen implementeren, maar dit voelt als een goede start voor .ahap ondersteuning in Android!
Even terug naar Rick RRRR
Als laatste test leek het me een leuk idee om een erg uitgebreid trillings bestand te nemen en dit op Android apparaten te testen. Ik kwam sound2ahap al ergens tegen, wat me in liet zien dat je muziek kan omzetten naar een .ahap bestand 🤯. Dit gaf me het uiteindelijke idee om iemand te Rick Rollen met alleen maar trillingen!
Het sound2ahap package gaf me niet genoeg tools om een liedje om te zetten naar een trilbestand, dus kocht ik de extra software toolkit Haptrix om dit te doen. Haptrix is speciaal bedoeld voor het ontwerpen van vibraties en deze te delen met de Haptrix community!
Na het samenvoegen van dit alles is het Rick RRRR package geboren!
Tot slot
Het schrijven van dit package was echt heel erg tof, en het eindresultaat vind ik persoonlijk erg grappig. Maar achter deze lol zit ook een gave open source samenwerking en ik ben trots op wat we hebben gemaakt. We gaan dit zeker inzetten voor klanten in de toekomst!
Wil je nog meer lezen over mijn open source avonturen? Lees dan mijn voorgaande blogs op deze website, of volg me op X (https://x.com/bassiuz). Tot de volgende keer!