Xamarin.iOS-sovelluksen julkaisuautomaatio
Kinnunen, Riku (2025)
Kinnunen, Riku
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025060821505
https://urn.fi/URN:NBN:fi:amk-2025060821505
Tiivistelmä
Tämän opinnäytetyön tarkoituksena oli tutkia nykyaikaisia CI/CD-periaatteita ja niitä hyödyntäen toteuttaa Xamarin.iOS-sovelluksen julkaisuautomaatio. Työn tavoitteena oli kehittää luotettava ja tehokas automatisoitu julkaisuputki, joka yksinkertaistaa ja nopeuttaa mobiilisovelluskehitystä.
Työ jakautui teoriaosuuteen ja käytännön toteutukseen. Teoriaosuudessa tarkasteltiin jatkuvan integraation ja jatkuvan toimituksen periaatteita ja käytäntöjä sekä perehdyttiin Xamarin.iOS-sovelluksen julkaisuprosessiin ja esiteltiin siinä vaadittavat teknologiat ja laitteet.
Käytännön osuudessa toteutettiin julkaisuautomaatioputki sovellukselle käyttäen Fastlane automaatiotyökalua. Ratkaisu integroitiin osaksi projektissa jo käytössä ollutta GitLab CI/CD -alustaa. Toteutukseen lisättiin myös sovelluksen allekirjoitusavainten ja jakeluprofiilien hallintaa helpottavia ominaisuuksia.
Tuloksena saatiin toimiva automaattinen julkaisuputki, joka vähensi merkittävästi manuaalisen työn määrää sovelluksen julkaisuprosessissa. Ratkaisu paransi kehittäjätyytyväisyyttä ja mahdollisti sovelluksen nopeammat ja luotettavat julkaisut.
Työ jakautui teoriaosuuteen ja käytännön toteutukseen. Teoriaosuudessa tarkasteltiin jatkuvan integraation ja jatkuvan toimituksen periaatteita ja käytäntöjä sekä perehdyttiin Xamarin.iOS-sovelluksen julkaisuprosessiin ja esiteltiin siinä vaadittavat teknologiat ja laitteet.
Käytännön osuudessa toteutettiin julkaisuautomaatioputki sovellukselle käyttäen Fastlane automaatiotyökalua. Ratkaisu integroitiin osaksi projektissa jo käytössä ollutta GitLab CI/CD -alustaa. Toteutukseen lisättiin myös sovelluksen allekirjoitusavainten ja jakeluprofiilien hallintaa helpottavia ominaisuuksia.
Tuloksena saatiin toimiva automaattinen julkaisuputki, joka vähensi merkittävästi manuaalisen työn määrää sovelluksen julkaisuprosessissa. Ratkaisu paransi kehittäjätyytyväisyyttä ja mahdollisti sovelluksen nopeammat ja luotettavat julkaisut.