Autore Topic: Android & C++  (Letto 4282 volte)

Offline ecalogiuri

  • Tech Guru
  • *****
  • Post: 235
  • Karma: +2/-0
    • Mostra profilo
Android & C++
« il: 06 Marzo 2014, 12:25:56 »
Salve ragazzi,
volevo sapere se esistono degli IDE free per sviluppare su Android IN C/C++. Io non conosco questa piattaforma e vorrei iniziare a sperimentare un pò...

Ciao,
Enzo.

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re:Android & C++
« Risposta #1 il: 06 Marzo 2014, 12:28:33 »
Usa Eclipse, installando il supporto Android NDK (Native Development Kit).

Prima scarica questo (Eclipse preconfigurato per Android): http://developer.android.com/sdk/index.html
Poi segui questa guida per installare NDK: http://developer.android.com/tools/sdk/ndk/index.html

e poi studia la documentazione dallo stesso sito :)

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re:Android & C++
« Risposta #2 il: 06 Marzo 2014, 12:33:19 »
Se vuoi un consiglio da parte di uno che con Android ci lavora da anni, impara il Java e usa il kit di base. C e C++ sono supportati ma aumentano notevolmente la complessità delle applicazioni, non per colpa del linguaggio in sè, ma per colpa dell'architettura di Android che rende il tutto più complicato. Se conosci il C++, puoi facilmente imparare il Java con poco sforzo ed essere subito produttivo su Android.

Ah, procurati un dispositivo fisico, sviluppare su emulatore/virtual machine è molto scomodo in Android, a differenza di altri OS fatti meglio come iOS e Windows Phone, che sono dotati di emulatori decenti.

Offline ecalogiuri

  • Tech Guru
  • *****
  • Post: 235
  • Karma: +2/-0
    • Mostra profilo
Re:Android & C++
« Risposta #3 il: 06 Marzo 2014, 12:49:07 »
Grazie tante per i consigli. Come dispositivo utilizzerò quello della mia comgagna (ma lei non lo sa ancora), un Sony xPeria qualcosa... Scarico e domani sera installo. Con Java in passato ho realizzato qualcosina, quindi non mi è sconosciuto; il mio "forte" però è il C/C++ :-)
« Ultima modifica: 06 Marzo 2014, 12:50:59 da ecalogiuri »

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re:Android & C++
« Risposta #4 il: 06 Marzo 2014, 12:52:35 »
capisco, anch'io sono un programmatore C++, ma con Android preferisco di gran lunga usare Java, anche se ultimamente stavo valutando Qt.
In caso, se vuoi dargli un'occhiata, prova Qt 5.2 con Qt Creator, supporta Android a livello beta e sembra funzionare decentemente (devi studiare QML per fare i layout grafici). Rispetto al kit ufficiale fa meno cose, ma ti consente di programmare in C++ con meno problemi rispetto ad usare l'NDK liscio.

Offline saimon69

  • Guru
  • *****
  • Post: 1833
  • Karma: +23/-3
  • Web Dev e musicista da camera (da letto)
    • Mostra profilo
    • binarydoodles Blog
Re:Android & C++
« Risposta #5 il: 07 Marzo 2014, 02:46:27 »
Un po' OT ma mi chiedevo se c'e' modo di sviluppare in Android senza installare tutto l'ambaradan di eclipse piu' il JDK (ok non posso fare a meno del JDK ma Eclipse e' pesante sul mio laptop non piu' nuovo di pacca)
AROS : mica bau bau micio micio =^x^=

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re:Android & C++
« Risposta #6 il: 07 Marzo 2014, 09:23:26 »
Un po' OT ma mi chiedevo se c'e' modo di sviluppare in Android senza installare tutto l'ambaradan di eclipse piu' il JDK (ok non posso fare a meno del JDK ma Eclipse e' pesante sul mio laptop non piu' nuovo di pacca)

in linea teorica ti basterebbe un editor e il compilatore da riga di comando, più Apache ANT per generare ed eseguire i build script, ma così va bene solo per fare un esperimento veloce. Per lavorare produttivamente un IDE è fondamentale e quelli per Android sono tutti pesanti: Eclipse, IntelliJ IDEA (Android Studio), Netbeans (supporto limitato).

Offline ecalogiuri

  • Tech Guru
  • *****
  • Post: 235
  • Karma: +2/-0
    • Mostra profilo
Re:Android & C++
« Risposta #7 il: 07 Marzo 2014, 09:39:20 »
Sto scaricando dai link che mi hai segnalato... Ma Eclipse permette di realizzare un eventuale interfaccia a mano o gli oggetti grafici vanno creati manualmente? Penso che ti farò tantissime domande, non odiarmi :-)

Offline ecalogiuri

  • Tech Guru
  • *****
  • Post: 235
  • Karma: +2/-0
    • Mostra profilo
Re:Android & C++
« Risposta #8 il: 07 Marzo 2014, 09:55:25 »
Leggendo un pò di documentazione ho visto che Eclipse può installare ed eseguire direttamente le app sullo smartphone, ora non potendo sequestrare il cell della mia compagna per un tempo indeterminato, mi consigliate un device da due soldi da comprare, magari usato, su ebay? Basta che funzioni benino e che non mi faccia impazzire...

Grazie.

P.s.
Ma anche Lazarus + freepascal possono compilare per Android, come riportato qui: http://wiki.freepascal.org/Custom_Drawn_Interface/Android.
Che ne pensate?

Offline clros

  • ASM Lover
  • *****
  • Post: 457
  • Karma: +3/-1
    • Mostra profilo
Re:Android & C++
« Risposta #9 il: 07 Marzo 2014, 10:06:38 »

in linea teorica ti basterebbe un editor e il compilatore da riga di comando, più Apache ANT per generare ed eseguire i build script, ma così va bene solo per fare un esperimento veloce. Per lavorare produttivamente un IDE è fondamentale e quelli per Android sono tutti pesanti: Eclipse, IntelliJ IDEA (Android Studio), Netbeans (supporto limitato).

Nemmeno a farlo apposta, qualche giorno fa ho provato ad usare AndroidStudio. E l'impressione è proprio quella di un ambiente sicuramente molto più pesante rispetto al VisualStudio e probabilmente l'IDE è anche meno intuitivo.

Mi chiedo se esistano delle linee guida per creare app android che possano adattarsi facilmente a dispositivi con schermi di dimensioni differenti...esiste una sorta di layout contenitore che fa da solo o bisogna scrivere tutto a mano?
Claudio CP La Rosa

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re:Android & C++
« Risposta #10 il: 07 Marzo 2014, 16:35:39 »
Per esperienza personale, se siete ancora ai primi passi su Android usate solo Eclipse con il bundle che ho linkato, senza NDK (quindi soltanto Java).
Android è una piattaforma complicata e mal progettata e questi progetti di terze parti aggiungono complessità ulteriore.

@Claudio: Android supporta nativamente layout fluidi, sulla documentazione spiega tutto, precisamente qui: http://developer.android.com/guide/practices/screens_support.html
La questione dell'IDE è spinosa. Chi è abituato a Visual Studio purtroppo è condannato alla sofferenza eterna perchè gli altri IDE gli sono irrevocabilmente inferiori. Questo punto è immutabilmente scritto nel firmamento e ce ne dobbiamo fare una ragione :D

@Enzo: Per quanto mi piaccia Pascal, quell'attrezzo non lo toccherei nemmeno con un bastone. E' molto più produttivo studiare il Java e usare Eclipse, per lo meno all'inizio della tua esperienza con Android. Per i primi esperimenti va benissimo qualsiasi dispositivo cinese che vendono un tanto al chilo. Se la cosa dovesse trasformarsi in un lavoro, allora inizia ad avere senso un lavoro più strutturato e la predisposizione di strumenti di testing adeguati. Parliamo di non meno di 10-15 dispositivi di varie marche e caratteristiche per fare un testing che abbia un minimo di decenza.

Un paio di consigli per entrambi:
- a meno che non abbiate delle specifiche esplicitamente restrittive (es: cliente rompipalle), lasciate perdere il supporto a tutte le versioni di Android vecchie e mirate direttamente alle versioni 4.0.3 e successive.
- Android Studio è ancora in fase di beta, non usatelo se non siete già esperti di Android. Restate su Eclipse per il momento.

Offline cdimauro

  • Human Debugger
  • *****
  • Post: 4291
  • Karma: +7/-95
    • Mostra profilo
Re:Android & C++
« Risposta #11 il: 07 Marzo 2014, 18:03:44 »
Concordo su tutto. Una sola nota qui:
Ah, procurati un dispositivo fisico, sviluppare su emulatore/virtual machine è molto scomodo in Android, a differenza di altri OS fatti meglio come iOS e Windows Phone, che sono dotati di emulatori decenti.
Non l'ho mai provato, ma forse usando un'immagine Android x86 le prestazioni dovrebbero essere migliori rispetto alla classica immagine Android che usa ARM.

Offline ecalogiuri

  • Tech Guru
  • *****
  • Post: 235
  • Karma: +2/-0
    • Mostra profilo
Re:Android & C++
« Risposta #12 il: 07 Marzo 2014, 18:13:10 »
Grazie per i consigli. Infatti sto iniziando a giocare con java e qualche pulsante e testo a video e per ora va tutto bene. Seguo su eBay qualche asta con dispositivi android dal 4.0 in su. Mi sono scaricato anche alcuni ebook free che spiegano come programmare su Android.

Ma tanto vi chiederò sicuramente ulteriori chiarimenti :-)

Grazie!

AmigaCori

  • Visitatore
Re:Android & C++
« Risposta #13 il: 07 Marzo 2014, 18:58:17 »
Si trovano cessi da 50-60 euro spediti nuovi tranquillamente su Amazon.

http://www.amazon.it/Samsung-GT-S5280RWAITV-Galaxy-Bianco-Italia/dp/B00D3LI8OI/ref=sr_1_1?s=electronics&ie=UTF8&qid=1394214928&sr=1-1&keywords=android

Samsung, quindi diffusissimo, 60 euro con Android 4.1 @1Ghz

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re:Android & C++
« Risposta #14 il: 07 Marzo 2014, 19:42:11 »
Concordo su tutto. Una sola nota qui:
Ah, procurati un dispositivo fisico, sviluppare su emulatore/virtual machine è molto scomodo in Android, a differenza di altri OS fatti meglio come iOS e Windows Phone, che sono dotati di emulatori decenti.
Non l'ho mai provato, ma forse usando un'immagine Android x86 le prestazioni dovrebbero essere migliori rispetto alla classica immagine Android che usa ARM.

si le prestazioni sono decenti, ma mancano i codec in licenza e ha difetti con il compositing grafico. Non dipende da X86 ma dai driver qemu integrati che fanno pena. Se usi video o grafica particolare nell'app ti ritrovi con un sacco di grane. Le mie app sono tutte basate su video (compreso live streaming) e hanno grafica abbastanza complessa quindi sono fregato!

Tags: