PhoneGap Plugin System

Publié dans HTML et CSS | Laisser un commentaire

Overall Architecture

I have already presented PhoneGap, my goal here is to present its plugin system. Indeed, to enlarge web application possibilities, it may be useful to use native calls through Javascript. For example, to use a piece of complex Android code (Java code) easily in Javascript. This is possible using the PhoneGap plugin system.
The overall architecture of these plugins is the following:

  • a native component making the job, for example a Java Android file
  • a HTML / CSS / Javascript GUI using this native component through Javascript calls
  • a bridge between Javascript and the native code to create the link.

This bridge is composed of:

  • one native file (i.e. one Java file),
  • one Javascript file exposing this native component,
  • and generally one quick configuration file specific to the platform.

Continuer la lecture

Problèmes de mémoire ?

Maven OutOfMemoryError

Publié dans Java | Laisser un commentaire

Maven Error

Maven failed during a build whit the following error:

The system is out of resources.
Consult the following stack trace for details.
java.lang.OutOfMemoryError: PermGen space

Solution

Add the environment variable MAVEN_OPTS: -Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m

Problèmes de mémoire ?

Maven OutOfMemoryError

Publié dans Java | Laisser un commentaire

Erreur Maven

Lors d’un build, Maven s’arrête en failure et s’explique par l’erreur suivante :

The system is out of resources.
Consult the following stack trace for details.
java.lang.OutOfMemoryError: PermGen space

Solution

Ajouter la variable d’environnement MAVEN_OPTS : -Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m

Logo Eclipse

Générer automatiquement getters et setters PHP avec Eclipse PDT

Publié dans PHP objet | Laisser un commentaire

Plusieurs solutions s’offrent à nous :

  • Générer des templates Eclipse : semi-automatique, il y a de la manutention à faire pour chaque variable
  • Utiliser le plugin Eclipse PDT E-Surf : automatique et fonctionnel mais pas très propre (rajoute carrément un menu entre « Run » et « Windows ») et non-configurable
  • Utiliser le plugin Eclipse PDT PHPClassGenerator d’IBM pour générer directement une classe et ses accesseurs : automatique mais (trop ?) compliqué à configurer et utiliser… De plus, a priori, cela ne peut générer des getters/setters pour un attribut rajouté après coup

Si vous ne savez pas (encore) installer un plugin Eclipse, allons donc faire un tour sur ce billet : Let’s work OSGi Virgo on Eclipse.

Bref… il n’existe pas de solutions idéales à l’heure actuelle et c’est bien dommage ! Alors qu’en Java il est possible de faire clic droit > Source > Generate get/set ou Generate toString… Ce sont toutes ces choses qui font que développer en PHP Objet sous Eclipse n’est pas encore aussi facile que de développer en Java.

PhoneGap: first overview

Publié dans HTML et CSS | Un commentaire

PhoneGap is a platform for building mobile application using Web technologies: HTML, CSS and Javascript. Mobile platforms like Android, iPhone or Blackberry are not ready yet to manage such application, that is why PhoneGap is filling in the gap by providing a plugin system to use native call through Javascript.
This is very interesting platform because there is a global movement between Web technologies interacting with mobile, smartphone, … You know: HTML5, CSS3, Boot 2 Gecko (see also: B2G Wiki), Apache Cordova, SOCIETIES project, …


Continuer la lecture

RaspberryPi

Raspberry PI: more than a cheap little computer under GNU Linux

Publié dans Geekeries | Laisser un commentaire

Did you know Raspberry PI? You have to! Raspberry PI, oh yeah 🙂

RaspberryPi

Raspberry Pi : Bien plus qu’un petit et pas cher ordinateur sous GNU/Linux – Framablog

Publié dans Geekeries | Laisser un commentaire

Si vous n’en avez pas encore entendu parlé : il est temps ! Raspberry PI oh yeah 🙂

Editeur, QString et UTF-8 avec Qt

Publié dans C / C++ | Laisser un commentaire

Où comment gérer l’UTF-8 avec Qt ?

Pour l’éditeur

  • Pour tous les projets de Qt : Outils / Options / Editeurs de texte / Default Encoding et sélectionner UTF8.
  • Par projet : Projects / Paramètres de l’éditeur / Default Encoding et sélectionner UTF8.

Pour l’affichage, via un QString par exemple

  • Globalement pour tous les affichages : grâce à QTextCodec ! QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"))
  • Pour un seul QString : QString::fromUtf8(« chaine encodée en UTF-8 »)

J’ai trouvé ces informations sur le forum français de Qt.

Erreur Android : « Debug certificate expired »

Publié dans Java | Laisser un commentaire

Lors de la compilation, si Android vous sort une erreur du style « Debug certificate expired » : ni une ni deux, allez voir votre SDK et supprimez le fichier debug.keystore situé dans le répertoire .android généralement placé dans votre répertoire utilisateur. En clair : ~/.android/debug.keystore (Linux et Mac OS X) %USERPROFILE%/.android/debug.keystore (Windows).

Une réponse longue et plus précise est lisible ici :

"Debug certificate expired" error in eclipse android plugins – Stack Overflow.

Qt : undefined reference to vtable for …

Publié dans C / C++ | 19 commentaires

Si vous travaillez sur Qt, il vous ait peut-être déjà arrivé d’obtenir une erreur du style :

erreur : undefined reference to `vtable for’

Pourquoi a-t-on cette erreur ?

Cette erreur arrive généralement lorsque l’on souhaite utiliser « signal » et « slot » dans Qt via la méthode connect. Pour une raison ou une autre, le compilateur n’arrive pas à créer le ou les fichiers « .moc » nécessaire à ce mécanisme, et : c’est le drame !
Une autre raison peut être la non sur-définition d’une méthode dérivée alors qu’elle est déclarée virtual dans la classe parente. Là encore, même résultat: le compilateur n’arrive par à créer les fichiers « .moc ».
Voyons voir comment corriger tout ça…
Continuer la lecture