sdk


Αndroid + Αrduino = έξυπνες συσκευές παντού; 1

Στο Google I/O Summit (όπου I/O βγαίνει από το input/output δηλαδή είσοδος/έξοδος δεδομένων) ανακοινώθηκε μεταξύ ένα σωρό άλλων πραγμάτων όπως το Chromebook (laptop που θα τρέχουν το ChromeOS, το οποίο μπορείτε να δείτε πάνω-κάτω πως δουλεύει τα ωραιότατα builds που έχει φτιάξει ο Hexxeh χρησιμοποιώντας ένα USB ), την νεώτερη έκδοση (3.1) του Android SDK  και ένα νέο στοιχείο την πλατφόρμας Android που μάλιστα είναι (backported δηλαδή συμβατό με την έκδοση Android 2.3.4) την υποστήριξη Android Open Accessory.

Τι είναι είναι όμως αυτό το Android Open Accessory και γιατί είναι σημαντικό για το την πλατφόρμα του Android, και που κολλάει το Arduino; Λοιπόν ας τα πάρουμε ένα ένα με την σειρά για να βγάλουμε άκρη. Μέχρι πρόσφατα, όταν είχατε ένα κινητό Android ουσιαστικά δεν μπορούσατε να χρησιμοποιήστε παρά ελάχιστα το USB σας. Οι πιο συνηθισμένες επιλογές που είχατε ήταν να το χρησιμοποιήστε το κινητό σας ως συσκευή εξωτερικής αποθήκευσης είτε σε ορισμένες περιπτώσεις ως τρόπο για να έχετε internet στο υπολογιστή σας. Αλλά το κινητό σας δεν είχε τρόπο να αρχίζει επικοινωνία προς μια άλλη συσκευή USB και να την ελέγξετε.

Τώρα με το Android Open Accessory δίνεται η δυνατότητα στο κινητό σας να βλέπει συσκευές σχεδιασμένες ειδικά για το Android Open Accessory με ένα απλό πρωτόκολλο επικοινωνίας.  Ενώ στο μέλλον θα έχουμε την δυνατότητα επικοινωνίας και μέσω Bluetooth. Ωραία! Θα μου πείτε αλλά το πρώτο πράγμα που θα σκεφτείτε είναι ο μπελάς για το πως θα φτιαχτούν τέτοιου είδους συσκευές σωστά; Εδώ έρχεται το Arduino! Βλέπετε μπορεί όπως πολύς κόσμος εκεί έξω μπορεί να γκρινιάζει ορισμένες φορές για το πόσο υπερβολικό είναι να χρησιμοποιεί κανείς την πλατφόρμα ηλεκτρονικών Arduino για να κάνει απλά πράγματα. Όμως το Arduino έχει ένα βασικό ατού, είναι ότι πρέπει για την ανάπτυξη πρωτοτύπων και δοκιμαστικών συσκευών. Ειδικά με την χρήση shields μπορείς κανείς να προσθέσει μια πλειάδα από έτοιμα προς χρήση κυκλώματα (λες και είναι τουβλάκια) lego από την άλλη το Arduino έχει μια σαφώς πολύ εύκολη γλώσσα προγραμματισμού (από την Assebly που συνήθως χρειάζεται για να προγραμματίσει κανείς ένα μικροελεγκτή).

Τι κάνει λοιπόν η Google, προσφέρει το Android Open Accessory Development Kit ή ADK. Μια υλοποίηση του Arduino (είδατε τι καλό που είναι όταν μια πλατφόρμα είναι ανοιχτό hardware) που υποστηρίζει το Android Open Accesory. Φυσικά μπορείτε να κατεβάστε το απαραίτητο λογισμικό ώστε να λειτουργήσει στο ίδιο πακέτο θα βρείτε και τα σχέδια για το hardware αν μπορείτε και θέλετε να τα φτιάξτε μόνοι σας (ανοιχτό hardware λέμε όχι αστεία) φυσικά υπάρχει η δυνατότητα να τα αγοράστε. (Κοστίζει γύρω στα 275 euros και φτιάχνεται στην Ιαπωνία)

Επειδή φυσικά το Arduino είναι μεγαλούτσικο, ακριβούτσικο και γενικά δεν είναι ότι πρέπει για μαζική παραγωγή συσκευών υπάρχει και η δυνατότητα χρήσης μιας development board βασισμένης στο πολύ διαδεδομένο και μακράν φθηνότερο και μικρότερο microcontroler PIC με το οποίο μπορείτε να φτιάξτε πρωτότυπα που θα είναι πιο κοντά σε προϊόντα παραγωγής η οποία έχει μεν μικρότερο κόστος (γύρω στα 56 euros) που αν και δεν είναι βασισμένη στο ADK μπορείτε να την χρησιμοποιείστε για να φτιάξτε τα δικά σας Open Accessories.

Τα συγκεκριμένα στοιχεία είναι τα απαραίτητα για να δούμε μια ολόκληρο σειρά από νέου τύπου συσκευές (open accessories) που θα επικοινωνούν με συσκευές Android (και επειδή τελικά το πρωτόκολλο του Android Open Accessory είναι ανοιχτό και τεκμηριωμένο σε βάθος ίσως στο μέλλον δούμε και άλλου τύπου συσκευές με λειτουργικά εκτός του Android να επικοινωνούν με τέτοια μπλίμπλίκια). Δυνητικά η τεχνολογία αυτή έχει την δυνατότητα να δημιουργήσει μια νέα αγορά gadgets που μπορεί να μετατρέψει πλέον το κινητό τηλέφωνο μας ή το tablet μας σε ένα universal τηλεχειριστήριο.

Ένα από τα βασικά στοιχεία που μπορούν να επιδράσουν στην υιοθέτηση του Android Open Accesory είναι το γεγονός ότι τα απαραίτητα εργαλεία για την δημιουργία πρωτοτύπων συσκευών είναι όχι μόνο διαθέσιμα αλλά και ανοιχτά που σημαίνει ότι στο μέλλον μπορεί να δούμε ακόμη περισσότερα εργαλεία ανάπτυξης στο συγκεκριμένο πρωτόκολλο. Είμαστε κατά την γνώμη μου πολύ μακριά από το “έξυπνο” σπίτι που όλες οι συσκευές διαχειρίζονται και δίνουν δεδομένα στο κινητό μας τηλέφωνο όμως το γεγονός ότι πολλές από τις εταιρείες που φτιάχνουν συσκευές κινητής τηλεφωνίας που χρησιμοποιούν το Android είναι κατασκευαστές και άλλων ηλεκτρονικών με ονόματα όπως η Alcatel, η Haier, η Kyocera, η LG, η NEC, η Samsung, η Sharp, η Toshiba.

Δεν είναι η πρώτη φορά που έχουμε δει συνδυασμό των τεχνολογιών του Android και του Arduino σε πρωτότυπα, μόλις πριν λίγες ημέρες είχαμε αναφερθεί στο Paperphone, το εύκαμπτο smartphone που το λειτουργικό του σύστημα βασίζεται στο Android και χρησιμοποιεί το Arduino για την συλλογή δεδομένων. Ο συνδυασμός του Android και του Arduino ειδικά σε επίπεδο πρωτότυπου αποτελεί μια εξαιρετική λύση για την ανάπτυξη και το σχεδιασμό συσκευών τεχνολογίας που αξίζει να του ρίξουμε μια ματιά.


Προγραμματισμός σε Android με την Qt 4

Νομίζω ότι είναι σε όλους προφανές ότι το Android (το λειτουργικό σύστημα για κινητά τηλέφωνα που είναι βασισμένο στο Linux) είναι ένα από τα πλέον διαδεδομένα λειτουργικά συστήματα για κινητά τηλέφωνα, από την άλλη η Qt και ειδικά ο Qt creator είναι από τα πλέον ολοκληρωμένα προγράμματα δημιουργίας προγραμμάτων για όλες τις πλατφόρμες λογισμικού. Τι θα γινόταν όμως αν μπορούσαμε να συνδυάσουμε αυτά τα δύο εργαλεία το λειτουργικό Android και την ευχρηστία του QtCreator.

Αυτό ακριβώς προσπαθεί να κάνει το Android Lighthouse, χρησιμοποιεί μια τροποποιημένη έκδοση του Android NDK (για την ακρίβεια χρησιμοποιεί την προηγούμενη έκδοση του την r4 με πολλές τροποποιήσεις, η χρήση της r5 της πλέον πρόσφατης έκδοσης του Android NDK θα μπορούσε να δώσει ακόμη περισσότερες δυνατότητες ειδικά στους αισθητήρες του κινητού τηλεφώνου). Ουσιαστικά ο χρήστης γράφει εφαρμογές όπως θα έκανε με το QtCreator. Οι πολύ σημαντικές δυνατότητες του Android NDK (χαρακτηριστικό παράδειγμα τέτοιων δυνατοτήτων νομίζω ότι θα είναι το η Android έκδοση του VLC)  σε συνδυασμό με την ευχρηστία που προσφέρει το QtCreator πραγματικά πιστεύω θα δώσουν σημαντικότατη ώθηση σε όσους επιθυμούν να αναπτύξουν προγράμματα για το Android. Δεδομένης μάλιστα της λογικής της Qt για την δημιουργία κώδικα που μπορεί πολύ εύκολα να γίνει port από την μια πλατφόρμα στην άλλη νομίζω ότι θα δούμε αρκετά ενδιαφέροντα πράγματα στο μέλλον. Ειδικά με τις ευκολίες που προσφέρει η Qt από την έκδοση 4.7.0 που επιτρέπει την δημιουργία εφαρμογών ακόμη και από ανθρώπους που μέχρι πριν λίγο καιρό έγραφα το πολύ ένα απλό σκριπτάκι σε javascript και πολύ ήταν.

Να τονίσω ότι το εν λόγω project είναι ακόμη σε πολύ αρχικό στάδιο αλλά η δουλειά που γίνεται φαίνεται να είναι αρκετά καλή και φιλότιμη. Είμαι της άποψης ότι το project δεν είναι πολύ μακριά από το να φτάσει σε αρκετά ώριμο επίπεδο και μακάρι στο μέλλον να δούμε τις δυνατότητες αυτές ενσωματωμένες στις μελλοντικές εκδόσεις του QtCreator

Παρακάτω ακολουθεί ένα βίντεο που ο δημιουργός δείχνει της δυνατότητες του χρήσης της Qt για την δημιουργία εφαρμογών στον Android.

(more…)


το VLC έρχεται στο Android 1

pylonenΤο VLC πιστεύω ότι είναι ένα από τα καλύτερα προγράμματα αναπαραγωγής πολυμέσων (ειδικά για video) για όλα τα λειτουργικά συστήματα, ενώ πραγματικά δίνει δυνατότητες που μπορούν να λύσουν τα χέρια μας (ή απλά να μας φανούν ενδιαφέρουσες). Πριν λίγο καιρό είδαμε το VLC να μπαίνει το app store της Apple για το iPhone (αν υπάρχει ένα θέμα καθώς η GPLv3 δεν είναι συμβατή με τους όρους του App store). Δεν είναι περίεργο που με την ευκαιρία της νέας έκδοσης του Android NDK που δίνει ακόμη περισσότερες δυνατότητες δημιουργίας εφαρμογών όχι μέσω του πατροπαράδοτου τρόπου γραφής σε Java αλλά σε C και C++. Ήδη οι developers του VLC κάνουν φανταστική δουλειά και έχουν προχωρήσει αρκετά στην ανάπτυξη του κώδικα του VLC για το Android. Με τους ρυθμούς αυτούς πιστεύω ότι το πολύ μέσα στον Ιανουάριο θα δούμε το VLC έτοιμο για το Android και μαντέψτε… οι όροι του Android App Market δεν έρχονται σε αντίθεση με την GPLv3 (ή με κάποια άλλη άδεια ελεύθερου λογισμικού).

Περισσότερα μπορείτε να διαβάστε στο Tech & Tech. Πιστεύω ότι στο μέλλον ειδικά με την ωρίμανση του Android NDK θα δούμε ακόμη περισσότερες εφαρμογές υψηλού επιπέδου στο Android.

Για τους προγραμματιστές που ενδιαφέρονται για τις τεχνικές λεπτομέρειες της ανάπτυξης της Android έκδοσης του VLC προτείνω να ρίξουν μια ματιά στο Git του.


το Qt SDK 1.0 από την Nokia φέρνει ποίο κοντά desktop, symbian και maemo εφαρμόγες 2

H Nokia πριν λίγες ημέρες προχώρησε στην διάθεση του Qt Software Development Kit 1.0. Στόχος του Qt SDK 1.0 είναι να διαθέσει στους developers της Qt την δυνατότητα όχι μόνο να γράψουν εφαρμογές Qt για το desktop αλλά να απλοποιήσει και την διαδικασία δημιουργίας εφαρμογών Qt και για πλατφόρμες κινητής τηλεφωνίας όπως το Symbian και το Maemo.

Πέρα από το Qt Creator 2.o και τις βιβλιοθήκες της Qt 4.7 το Qt SDK 1.0 περιλαμβάνει νέα APIs για την δημιουργία εφαρμογών κινητών τηλεφώνων Symbian και Maemo,  Ένα από τα πλέον χρήσιμα χαρακτηριστικά του είναι η δημιουργία ενός προσομειωτή ώστε να δοκιμάστε τις εφαρμογές σας πριν τις διαθέστε σε χρήστες κινητής τηλεφωνίας ακόμη και αν δεν έχετε κινητά τηλέφωνα τις Nokia. Ο ενσωματωμένος compiler του Qt SDK 1.0 δίνει την δυνατότητα άμεσης δημιουργίας αρχείων .sis και .deb για Symbian και Debian κινητά αντίστοιχα. Μια αρκετά χρήσιμη προσθήκη στο Qt SDK 1.0 είναι η δυνατόητα προσθήκης του Nokia smart installer στης εφαρμογές σας. Αυτό θα δώσει την δυνατότητα όταν κάποιος χρήστης κατεβάζει εφαρμογές που έχετε γράψει για το Symbian το Nokia Smart Installer να ελέγχει για πιθανά αρχεία και βιβλιοθήκες (βλέπε Qt) και να τα κατεβάζει από τους servers της Nokia.

Παράλληλα η Nokia δίνει την δυνατότητα σε ανεξάρτητους developers να γραφτούν ως Ovi Publishers στο Ovi store (με κόστος εγγραφής 50 ευρώ κατά την εγγραφή) με σκόπο να γίνει ανταγωνιστικό το Ovi Store σε σχέση με τα αντίστοιχα Αpp Stores της Apple και του Android για τους developers, επίσης με την διαδικασία public beta η Nokia προσπαθεί να απλοποιήσει την διαδικασία κάποιου να πιστοποιηθεί ως Symbian Publisher.

Αρκούν οι κινήσεις αυτές για να δώσουν ώθηση στην δημιουργία εφαρμογών εντός και εκτός Ovi store για την Nokia ή είναι καταδικασμένη να μείνει ουραγός πίσω από την Apple και το Android; Σίγουρα η Qt είναι ένα ιδιαίτερα ισχυρό εργαλείο για να γράψει κανείς προγράμματα σε Linux, Mac OS X και Windows και η προσθήκη μέσα στο Qt SDK δυνατοτήτων για δημιουργία εφαρμογών Symbian και Maemo είναι σίγουρα ένα θετικό βήμα. Ωστώσο ειδικά στην ανάπτυξη εφαρμογών κινητής τηλεφωνίας οι ανταγωνιστές της Nokia έχουν πραγματικά μεγάλο κομμάτι της αγοράς και εκατοντάδες χιλιάδες εφαρμογές για τους χρήστες. Φυσικά ποτέ δεν ξέρουμε τι επιφυλλάσει το μέλλον.


Ο Παράξενος Καθεδρικός 24 4

την Αγγλόφωνη έκδοση θα την βρείτε εδώ, η συμφωνία στην οποία αναφέρεται ο Σκύλος είναι εδώ και μπορείτε να βρείτε ένα άρθρο του Infoworld σχετικά με την συμφωνία εδώ.

Επίσης να ευχαριστήσω την Μαρία Π. που με βοήθησε να ξεκολλήσω στην μετάφραση.