Androidille käännetty Qt-ympäristö sai ensimmäisen julkaisun

11
Kaarlo Räihä

Androidille käännetty Qt-ympäristö sai ensimmäisen julkaisun
Qt-ympäristön siirtäminen Android-ohjelmistoalustalle on nyt askeleen lähempänä maalia, sillä asian tiimoilla työskentelevät kehittäjät ovat julkaisseet nyt Necessitas-kehityspaketin, joka mahdollistaa Qt-ohjelmien kääntämisen Android-yhteensopiviksi.

Necessitas pitää sisällään Android-laitteille suunnatut kirjastot, Qt-ympäristön ohjeineen sekä Android-tuen sisältävän Qt Creator -ohjelmiston. Näiden avulla sovelluskehittäjät voivat siirtää Qt-ohjelmansa myös Android-laitteille.

Koska kyseessä on harrastelijavoimin toteutetun projektin Alpha-julkaisu, ei Necessitas vastaa toimivuuden osalta vaikkapa Nokian laitteille suunnattua Qt-ympäristöä, joten esim. OpenGL-rajapintaa hyödyntävät Qt-ohjelmat eivät vielä toimi Androidissa. Qt Creatorin osalta asiat tuntuvat kuitenkin olevan jo nyt hyvin kohdillaan, ja monet debug-ominaisuudet toimivat mallikkaasti Android-emulaattorin kanssa.

Alla Necessitasin toimintaa esittelevä video (VAROITUS, videon alussa näkyy työpaikoille ja perheen pienemmille soveltumatonta kuvamateriaalia!)




Tilaa Puhelinvertailun uutiskirje!

Lähetämme noin kerran viikossa uutiskirjeen, joka sisältää viikon ajalta tärkeimmät uutisemme.

Tilaamalla uutiskirjeemme hyväksyt sääntömme ja tietosuojakäytäntömme.

Parhaat kännykkätarjoukset

Motorola Moto G06 Power – hinta laskenut -35%

Motorola Moto G06 Power
109 € CDON
189 € Gigantti
189 € Lenovo

Alin hinta viikko sitten: 166 €

Apple iPhone 16 Pro – hinta laskenut -30%

Apple iPhone 16 Pro
877 € iPhonetalo
1259 € Proshop
1259 € CDON

Alin hinta viikko sitten: 1259 €

Sony Xperia 1 VI – hinta laskenut -29%

Sony Xperia 1 VI
997 € Power

Alin hinta viikko sitten: 1399 €

Samsung Galaxy A16 (5G) – hinta laskenut -26%

Samsung Galaxy A16 (5G)
95 € DNA
129 € Gigantti
129 € Power

Alin hinta viikko sitten: 129 €

Kommentit (11)

Irekkeri
Irekkeri

2

@1
Hyvin näkyy. Muutama kellarikoodari saanut taas kasaan helvetin hankalakäyttöisen ja heikosti toimivan raakileen, joka on vain haamu siitä, mihin kaupallinen maailma pystyy.

Vastaa
syrtek66
syrtek66

3

@2, ja kun kehitystyökalut maksavat a) VS IDE 1000$, b) marketplacen certi 500$ plus muut kulut, Windows lisenssi 50$ euroa per vuosi, kertalisenssi vähintään 150$, MS officen lisenssit ~100$ yms yms ja yms.

Ja kaikki tämä valuu Amerikkaan Richmondin rahalaariin (no sertifikaatti maksu ei menen mutta menee kuitenkin amerikkaan). Kerro tämä vaikka 100.000 niin ymmärrät vähän miksi tämä diili kannattaa M$:lle vaikka maksoivat Nokialle.

Vastaa
Jarissimo
Jarissimo

4

@2 "Muutama kellari koodari" on tuon väsännyt ja se näyttäisi Alpha versioksi toimivan ihan ok.

Vertaa esim: Nokian 5000 palkalliseen kehittäjään.. Tuntuu todellakin oudolta eikä varmasti mahdu sinuun ajatusmaailmaan..

Mutta mistähän johtuu että ilmaiseksi tekevillä näyttäisi olevan enemmän motivaatiota, kuin palkallisilla? Ainaskin he ovat saaneet enemmän ja siistinpää aikaiseksi..

Vastaa
Puppek
Puppek

5

"Koska kyseessä on harrastelijavoimin toteutetun projektin Alpha-julkaisu..."

Qt:sta ei ikinä tunnu tulevan valmista. Montako vuotta siitä on selitetty? Kolme? Sitten kun saavat jotain valmista niin huomataan, ettei se enää toimikaan uudemmissa ympäristöissä ja sitten odotellaan lisää.

Vastaa
kolmis
kolmis

6

On se vaan niin että kun koodataan itselle niin tulee paljon käyttökelpoisempaa ja muutenkin parempaa koodia kuin kaupallisesti tuotettu päivittäinen kasa paskaa.

Vastaa
kolmis
kolmis

7

On se vaan niin että kun koodataan itselle niin tulee paljon käyttökelpoisempaa ja muutenkin parempaa koodia kuin kaupallisesti tuotettu päivittäinen kasa paskaa.

Vastaa
Phiideer
Phiideer

8

@9
Noh, tuo voi pitää paikkansa ja myös olla pitämättäkin. Jos oikeasti koodaa itselle, niin voi hyvinkin tehdä sellaisen tuotoksen, jota vain itse osaa käyttää - kuten ennen vanhaa: huono dokumentointi, ohjeet, epäselvät ja epäloogiset toiminnot perustallaajan vinkkelistä :)

@6
Komppaan user_org:ia, mutta lisää vielä sen, että periatteessa Qt ei tule varmaan ikinä olemaankaan "valmis" - edes siinä mielessä kuin esim. käyttöjärjestelmä on valmis, koska se ei ole varsinainen tuote vaan työkalu kehittäjille. Hypetys Qt:n suhteen kannattaa periaatteessa jättää huomioimatta, koska se nyt vain liittyi meidän vinkkelistä Nokian ns. suunnitelmaan palata kärkeen. Mobiilipuoli koki kolauksen (ja siten myös vetovoima ko. kehittäjille). Itse asiassa

Qt:llä voi olla Linuxille aika merkittävä vaikutus tulevaisuudessa, kun Macille ja Windowsille suunnattu kaupallinen softa yllättäen julkaistaan myös pingviinille (ilmeisesti hyvin pienellä lisäkustannuksella). Hyvä esimerkki on Autodeskin Maya.

Edit: pientä selvennystä.

Vastaa
Puppek
Puppek

9

@11 "Qt ei tule varmaan ikinä olemaankaan "valmis" - edes siinä mielessä kuin esim. käyttöjärjestelmä on valmis, koska se ei ole varsinainen tuote vaan työkalu kehittäjille."

Kuulostaa kyllä sekavalle ja sille, ettei Qt:sta ikinä tule eri järjestelmissä toimivaa kokonaisuutta. Itse teen hommia Flashilla ja siitä on ollut jo pitkään selvät versiot sekä toimiva kehitystyökalu. Laitetuki on myös laaja, vaikkei joka laite sisälläkään uusinta Flashplayeria.

Voisiko joku vaikka selventää, että mille alustoille Qt on olemassa ja mitkä versiot ovat kyseessä? Tietokoneilla Flash on tietääkseni Windowsille, Macille ja Linuxille versiossa 10.1 ja sama löytyy monista uusista Android-älypuhelimista. Omassa Nokiassa on Flash Lite 3.1. Ei ole mitään hajua minkä version Qt:sta siihen saa, mistä sen saa tai mitä sillä edes tekee?

Vastaa
Agent_007
Agent_007

10

Lainaus:

Ei ole mitään hajua minkä version Qt:sta siihen saa, mistä sen saa tai mitä sillä edes tekee?


Qt:lla toteutettujen ohjelmien idea on se, että tavallisen käyttäjän ei tarvitse asentaa mitään. Eli Qt kääntää about kaiken kyseisen alustan natiiviksi koodiksi, täten käyttöliittymän ulkoasu on aina kyseisen alustan suositusten mukainen.

Qt on siis suunnattu ohjelmistokehittäjille, jotka voivat samalla kertaa tuottaa koodia (pieniä muokkauksia ja alustakohtaisia säätöjä tarvitaan aina välistä), joka toimii useilla eri alustoilla, kunhan kääntää kullekin alustalle sopivan version. Käyttöliittymäelementtien lisäksi Qt pitää sisällään grafiikan piirtoa, ohjauslaitteiden lukemista jne., joten parhaassa tapauksessa voi kaikki käytettävät komponentit poimia Qt:n tarjonnasta, jolloin porttaus muille alustoille on aina helpompaa.

Androidin kohdalla tässä on tietenkin poikkeus noiden kirjastojen osalta, jotka sovellusten on ladattava ennen käyttöä (kuten videolla näkyy).

Vastaa
Phiideer
Phiideer

11

@13 (pahoitteluni, että tämä vastaus tulee näinkin myöhään)

Okei, tässä toki liikutaan omien tietojen rajoilla, joten siitäkin syystä tekstini voi olla sekavaa...ja sisältää ehkä vähän puppuakin. Meinaan tuolla "ei ikivä valmis" -väittämälläni sitä, että tietynlaisilla sovelluksilla voi (käsittääkseni) hyvinkin käydä niin, että se ei Qt:sta huolimatta suoraan toimi alustalla C sellaisenaan, vaikka toimiikin alustalla A ja B. Mutta tämä ei tarkoita sitä, etteikö Qt tästä huolimatta pudottaisi merkittävästi ohjelman kehityskustannuksia alustalle C - jolloin Qt:stä on suuri hyöty kehittäjille, vaikkei se tuottaisikaan täysin sitä, mitä parhaimmillaan lupaa.

Mutta miksi Qt eikä Flash. Siihen on oikeastaan kaksi syytä, jotka Agent_007 mainitsi, mutta yritän ilmaista asian toisin sanoin:

a) Qt:lla tehty ohjelma on kuin mikä tahansa muu kyseiselle alustalle tehty ohjelma. Flash ohjelma aina näyttää samalta "Flash-ohjelmalta" alustasta riippumatta.

b)Natiivi koodi on tehokkaampaa kuin tulkin tarvitseva bytecode. Flashin kaltainen bytecode koodi on helposti siirrettävä(portable), mutta tekee sen suorituskyvyn kustannuksella. Bytecode pitää tulkata (joko käynnistyksen yhteydessä tai ajon aikana) ennen ajoa - eli tulkkaus on ylimääräistä prosessointia, jonka natiivi koodi ohittaa.
Ja tähän liittyen Agent:007 mainitsema seikka, että Qt:lla pääsee paremmin käsiksi alustan resursseihin; Flash pääsee käsiksi vain virtuaalikoneensa resursseihin.

Itse asiassa taisin aika pitkälti uudelleenkirjoittaa kaiken, mitä Agent_007 totesi. Mutta toivottavasti sämä selvensi edes hieman. Jotkut termit tuolla välissä voi kuitenkin heittää hieman.

Vastaa

Kommentoi artikkelia

Pysy aiheessa ja kirjoita asiallisesti. Epäasialliset viestit voidaan poistaa tai niitä voidaan muokata toimituksen harkinnan mukaan.

Haluan ilmoituksen sähköpostitse, kun ketjuun kirjoitetaan uusi viesti.