[Qt] Deployen naar Android

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • NjitsSs
  • Registratie: Oktober 2007
  • Laatst online: 10:32
Goedenavond collega tweakers

Ik merkte vandaag dat Digia een nieuwe Qt versie heeft gereleased (v5.1) met (volgens hun) goede Android ondersteuning.
Ik heb dus zonet Qt 5.1, Qt Creator 2.8.0, Android SDK 201307017 en Android NDK R9 geïnstalleerd op mijn Linux Mint devbak.
Mijn HTC Touch Pro 2 (met Cyanogenmod 7.2) er aan en devven :9

Al snel was het uit met de pret, want Qt wilt niet deployen naar deze telefoon. In Projects>Run>Package Configurations staat de Android Target SDK op "android-17", wat uiteraard hoger is dan mijn telefoon. Ik kan ook niet kiezen voor andere versies. Volgens verschillende internet bronnen zou het toch mogelijk moeten zijn om te kiezen voor een andere SDK versie.

Heeft er misschien iemand een idee hoe ik hem toch kan laten bouwen voor een lagere SDK versie?

Acties:
  • 0 Henk 'm!

Verwijderd

Heb je wel de goede packages geïnstalleerd via Android SDK Manager (te openen via Android SDK folder)? Als je gewoon de huidige Android SDK installeert krijg je alleen de meest recente versie (in jouw geval versie 17) meegeïnstalleerd.

[ Voor 5% gewijzigd door Verwijderd op 28-07-2013 21:46 ]


Acties:
  • 0 Henk 'm!

  • NjitsSs
  • Registratie: Oktober 2007
  • Laatst online: 10:32
Oke, dom van mij om daar niet aan te denken. Ik kon vanuit Eclipse echter prima bouwen voor m'n telefoon (vanuit dezelfde SDK) dus ik zat niet direct een probleem te zoeken in die hoek.
Nu kan ik echter wel kiezen voor een oudere SDK versie. Bedankt!

Nu Qt nog zo ver krijgen om het daadwerkelijk naar de aangesloten telefoon te pushen.

Acties:
  • 0 Henk 'm!

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Nooit bij stil gestaan; ik ga het vanavond ook eens proberen. Grappige is dat ik ooit begonnen ben met Qt vanwege Symbian, en toen het het ben blijven gebruiken als dekstop GUI.

Acties:
  • 0 Henk 'm!

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Is het je nog gelukt? Ik ben er zelf ook aan bezig, en ik kan nu alles compilen en verschillende sdk versies worden herkend, maar ik kan niet deployen naar een AVD. De AVD start en doet dan niks, en qt creator geeft een error in deployment, maar geen specificatie hoe/wat.

Oh... Ok. Je virtual device aanzetten met de aan/uit knop helpt. Sorry :)

[ Voor 12% gewijzigd door Zoijar op 29-07-2013 20:40 ]


Acties:
  • 0 Henk 'm!

  • alex3305
  • Registratie: Januari 2004
  • Laatst online: 15-09 09:10
Alhoewel dit een guide is voor publiceren op Google Play, kan het misschien toch handig zijn als referentiepunt om te gaan ontwikkelen in Qt voor Android.

En anders proberen te beginnen met een demo project? Die zijn er volgens mij ook te vinden namelijk.

Acties:
  • 0 Henk 'm!

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Het werkt bij mij op de emulator (ook met android15 en android18). Zo eens eens m'n echte telefoon (15) proberen.

Enige minpuntje is dat het deployen, zelfs naar een virtual device, ongeveer een minuuttwee minuten duurt...

[ Voor 13% gewijzigd door Zoijar op 29-07-2013 21:06 ]


Acties:
  • 0 Henk 'm!

  • NjitsSs
  • Registratie: Oktober 2007
  • Laatst online: 10:32
Ik heb zonet mijn eerste Qt app gestart op mijn telefoon. Niet aan gedacht dat op een vers geïnstalleerde computer er uiteraard geen JDK zou staan.

Vreemd genoeg start Qt altijd de emulator op, maar laadt hij de app in de telefoon. En het deployen gaat ook hier tegen prehistorische snelheden.

Acties:
  • 0 Henk 'm!

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

NjitsSs schreef op maandag 29 juli 2013 @ 21:07:
Ik heb zonet mijn eerste Qt app gestart op mijn telefoon. Niet aan gedacht dat op een vers geïnstalleerde computer er uiteraard geen JDK zou staan.
:Y O-) Klinkt bekend haha
Vreemd genoeg start Qt altijd de emulator op, maar laadt hij de app in de telefoon. En het deployen gaat ook hier tegen prehistorische snelheden.
Ja, nog niet echt een oplossing voor gevonden... behalve gewoon een extra mingw native build op pc om te testen en alleen soms even echt te deployen.

Acties:
  • 0 Henk 'm!

  • NjitsSs
  • Registratie: Oktober 2007
  • Laatst online: 10:32
Ok, eerst was ik blij dat ik een app gepusht kreeg naar de telefoon, maar ik juichte wat te voorbarig. Ik had geen UI aangemaakt in Qt, dus ik nam aan dat het zwarte scherm gewoon de lege UI was.
Even kijken naar ADB logcat laat echter zien dat de qt libraries niet meegenomen worden in de apk. (java.io.FileNotFoundException /data/data/projectnaam/lib/lib--Managed_by_Qt_Creator--imports_Qt_labs_shaders_eenofanderelib.so (No such file or directory)) Toch staat Qt ingesteld op "Bundle Qt libraries in APK". Ministro op de telefoon zetten brengt ook geen soelaas.
Waarschijnlijk ben ik weer iets over het hoofd aan het zien... Ik ga even verder documentatie uitpluizen.

[ Voor 14% gewijzigd door NjitsSs op 29-07-2013 22:13 ]


Acties:
  • 0 Henk 'm!

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Bij Project / Run (waar je ook je android target versie instelt) kan je een lijst libs instellen, of 'scan from application' doen. Toen ik dat deed voegde hij wat meer toe dan alleen QtCore, maar ook QtGUI bv. Misschien dat?

---

Net geteset op mn android15 galaxy S2, en daar werkt het. Simpele UI met een checkboxje die je kan togglen.

Deployed ook een twintig keer sneller naar een echt device; ik denk dat de emulator gewoon nog niet al te best is (het is beta...)

[ Voor 36% gewijzigd door Zoijar op 30-07-2013 10:31 ]


Acties:
  • 0 Henk 'm!

  • NjitsSs
  • Registratie: Oktober 2007
  • Laatst online: 10:32
Mijn excuses voor de late reactie, maar door het warme weer de laatste tijd had ik niet veel zin om voor een hitte producerende computer te gaan schuilen.

Ik zit nog steeds het met vreemde probleem dat de app op de telefoon op zoek gaat naar libraries in /data/data/<appnaam>/lib.
Deze libraries zijn wel aanwezig in de apk (als je 'm unzipt heb je een mapje lib/armeabi-v7a met daar de benodigde .so files in), maar daar gaat de telefoon ze op een of andere manier niet zoeken.
Iemand een suggestie?

[ Voor 9% gewijzigd door NjitsSs op 06-08-2013 21:44 ]


Acties:
  • 0 Henk 'm!

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Bij mij kopieert hij alle libs naar /data/data/<app>/lib

oa. libQt5Core.so, libQt5Gui.so, libQt5Widgets.so, libgnustl_shared.so, lib<app>.so en nog wat plugins als so's.

Acties:
  • 0 Henk 'm!

  • NjitsSs
  • Registratie: Oktober 2007
  • Laatst online: 10:32
Na wat rond te neuzen op de bugtracker van Qt, blijkt dat er wel wat bugs zitten in de libraries voor ARM 5, en dat is net de architectuur die in mijn telefoon verscholen zit.
Toch maar eens beginnen uit te kijken voor een nieuwer model...

[ Voor 11% gewijzigd door NjitsSs op 07-08-2013 10:43 ]


Acties:
  • 0 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 21-09 22:35
Iig heb je dan niets aan de libraries voor ARMV7a architectuur ( Cortex-A gebaseerde CPU's )

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


Acties:
  • 0 Henk 'm!

  • NjitsSs
  • Registratie: Oktober 2007
  • Laatst online: 10:32
Inderdaad, daarom was ik net aan het proberen om de libraries opnieuw te bouwen voor een andere architectuur. De computer is nu nog bezig met bouwen, ik ben benieuwd wat het resultaat is.
Zie de voorlaatste post op deze thread.

Acties:
  • 0 Henk 'm!

Verwijderd

Hoi,
Ik zag deze thread. Ik werk zelf nog met qt 4.8 voor android. Ik heb inmiddels een (vrij uitgebreide) app ermee uitgebracht. Alleen de mogelijkheden van qt op android, necessitas, wat betreft UI controls zijn vrij beperkt. Ik vraag me af of dat met 5.x verbeterd is. Dingen die ik graag veranderd zou zien:
- Stabiliteit. Vooral als de app een paar minuten idle is kan het instabiel worden, symptomen: hangen en/of gedeeltelijk zwart scherm.
- Zowat alle controls hebben stylesheets nodig, anders krijg je bv vaak wit op wit, wat nogal lastig lezen is.
- Een control zoals qlineedit sizen kun je beter niet doen, alle kans dat het niet meer werkt op kleinere displays zoals 480x800. Check alles wat je doet met de ui op 480x800 als die resolutie belangrijk voor je is.
- Scrolling bv met tableviews e.d. is niet op de android manier, maar met scrollbars.
- Ik zou bv graag het keyboard in numeriek only zetten.

Ik vraag me af of Qt ooit zover komt dat ze de ui-controls goed voor elkaar krijgen, op de necessitas mailing list wordt er vanaf het begin al naar gevraagd en de consensus is dat er een complete rewrite van de ui-componenten voor android nodig is. Het werkt maar het kon beter en mooier.

Wat zijn jullie ervaringen wat dit betreft met qt 5.1?
Pagina: 1