Pieni App Delegate -testiohjelma

Moi,
kuten sanottua, opettelen parhaillaan applikaation sopeutumista erilaisiin keskeytyksiin, kuten puhelimen soimiseen, exit-napin painamiseen tai näytön lukitsemiseen. Kaikenlaisia selostuksia ja flow chartteja on nyt tulkittu, mutta emmental-aivot kaipasivat edelleen jotakin konkreettisempaa.

Tein siis pikkiriikkisen testiapplikaation, jonka ajattelin jakaa tässä, josko siitä joku muukin hyötyisi. Kyse ei ole siis mistään sen kummemmasta kuin valmis Xcoden ”Utility Application” -template, johon olen lisännyt NSLog-komentoja tyypillisimpiin applikaation eri vaiheisiin liittyviin delegate-metodeihin ym. – loki ei siis ole millään muotoa kattava, mutta perustoiminnoista päässee tämän avulla kärryille.

Huom! Ruudulla ei siis näy mitään muuta kuin perus Utility-template flipside-näkymineen – Xcoden Debugger Console (omppu-shift-R) pitää olla auki, jotta applikaatiosta saisi mitään irti.

Tässä Xcode-projekti zip-pakettina.

Asia konkretisoituu varsin mukavasti tiirailemalla konsolia applikaatiota käytellessä. Aika paljon konepellin alla tapahtuu, vaikka ulospäin ei näy juuri mitään. Esimerkiksi heti applikaatiota käynnistäessä pölähtää konsoliin tällainen raportti – MVC tarkoittaa MainViewControlleria, Flipside tietty kääntöpuolen ViewControlleria ja pelkät metodinimet viittaavat Application Delegaten metodeihin.

2011-10-19 23:17:26.485 AppDelegateHarjoitus[183:707] MVC - awakeFromNib
2011-10-19 23:17:26.496 AppDelegateHarjoitus[183:707] application:didFinishLaunchingWithOptions:
2011-10-19 23:17:26.516 AppDelegateHarjoitus[183:707] MVC - viewDidLoad
2011-10-19 23:17:26.520 AppDelegateHarjoitus[183:707] MVC - viewWillAppear
2011-10-19 23:17:26.525 AppDelegateHarjoitus[183:707] MVC - shouldAutorotateToInterfaceOrientation: Portrait
2011-10-19 23:17:26.529 AppDelegateHarjoitus[183:707] MVC - viewDidAppear
2011-10-19 23:17:26.535 AppDelegateHarjoitus[183:707] MVC - shouldAutorotateToInterfaceOrientation: Portrait
2011-10-19 23:17:26.543 AppDelegateHarjoitus[183:707] applicationDidBecomeActive:

Ihan mielenkiintoista oli huomata käytännössä esimerkiksi, että tuo awakeFromNib ilmoittaa olemassaolostaan ennen mitään muita viestejä, ja että tuo Autorotate-metodi tulee jostain syystä kutsutuksi kahdesti: sekä WillAppearin että DidAppearin jälkeen.

Jos App Delegaten ja View Controllereiden perustoiminnot vielä Dev Centerin kahlaamisen jälkeenkin vaikuttavat hieman hämäriltä, kuten minulla, tämän applikaation kanssa leikkiminen voi helpottaa asian hahmottamista.

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out / Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out / Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out / Muuta )

Google+ photo

Olet kommentoimassa Google+ -tilin nimissä. Log Out / Muuta )

Muodostetaan yhteyttä palveluun %s

%d bloggers like this: