Le forum a été mis à jour! (lire la suite...)

chpil

Responsable de section
  • Content count

    894
  • Joined

  • Last visited

About chpil

  • Rank
    RdS Développement

Profile Information

  • Lieu
    Rennes
  • Modèle
    Nexus 4 - Nexus 7 - Minix X5
  1. Bonjour, Tu peux déjà te baser sur la doc developer Android, tu y trouveras notamment un tutorial (avec exemple complet) pour le drawer. De même pour le ViewPager. Même si associer ces deux éléments risque de créer des interférences (les 2 se basant sur des swipes) ...
  2. Effectivement, ça ne peut pas marcher si la date que tu récupères sous forme de chaîne de caractères n'a pas le même format à tous les coups. Très clairement, le problème est plutôt lié à la bibliothèque que tu utilises. A voir de ce côté là
  3. SimpleDateFormat te permettra de faire une conversion d'une chaine de caractères en un objet Date, pas un entier. Ensuite, à partir de cet objet date, tu peux récupérer un entier (plus exactement un long, via getTime) que tu pourras ensuite stocker dans ta base. Pour ce qui est du pattern de conversion, il faut que tu utilises celui qui correspond au format que as en entrée à parser. Si ta date dans le fichier a le format "2012-06-05T06:00:00Z", il faut que le format utilisé corresponde ...
  4. Bonjour, C'est surtout que la question n'est pas à sa place. Ici, c'est la section pour présenter ses propres applications, pas pour demander des conseils/rechercher des applications.
  5. Bonjour, Sans doute qu'en réinjectant la TimeZone parsée dans le formatter, tu obtiendrais le résultat que tu souhaites: public String convertDate(String inputDate) { String outputDate = null; SimpleDateFormat inputFormatter = new SimpleDateFormat("EEE MMM d HH:mm:ss zZZZZZ yyyy", Locale.ENGLISH); SimpleDateFormat outputFormatter = new SimpleDateFormat("yyyyMMddHHmmss", Locale.FRANCE); try { Date d = inputFormatter.parse(inputDate); outputFormatter.setTimeZone(inputFormatter.getTimeZone()); outputDate = outputFormatter.format(d); } catch (ParseException e ) { e.printStackTrace(); } return outputDate; } Mais ceci n'est qu'une solution de contournement d'une mauvaise utilisation des dates. Car, si je comprends bien en relisant depuis le début de ce fil de discussion, les dates que tu manipules proviennent de ta base de données. Et stocker en bdd une date sous forme de chaine de caractères est, AMHA, une TRES mauvaise idée. Il faut manipuler une date avec le type qui lui correspond (Date en Java, Integer avec SQLite) et s'abtraire ainsi de toute dépendance à une langue, une timezone ou tout formattage. Et la conversion de cette date en chaine de caractère ne devant se faire que lorsque c'est nécessaire, typiquement lorsqu'il faut présenter cette information à l'utilisateur.
  6. Bonjour, Le problème que tu rencontres, c'est que tu fais des opérations longues (accès réseau) dans le thread principal (thread par défaut). Et Android n'autorise pas cela, et veille au grain, d'où le time-out. Il faut que tu déportes les opérations longues dans un thread, typiquement géré dans un Service PS: en Java, pour un test d'égalité des chaines de caractères, il ne faut pas utiliser l'opérateur == , mais la méthode equals ( if (s.equals("PLAY)) au lieu de if (s == "PLAY") )
  7. Bonjour, Le problème vient probablement de la façon de créer le PendingIntent. Tu crées un PendingIntent qui va essayer de lancer une Activity, ce que RadioWidget (la classe avec laquelle tu as initialisé l'Intent) n'est pas. Remplace PendingIntent pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, 0);parPendingIntent pendingIntent = PendingIntent.getBroadcast(context, appWidgetId, intent, 0);et reviens nous dire si ça marche mieux ;)
  8. Bonjour, Ca veut dire quoi que ton appli ne communique pas avec la base de données, plus précisemment ? Tu as une erreur ? Laquelle ? Peux-tu être plus précis sur ce qui se passe ? Normalement, pour initialiser correctement ta base de données lors de sa première exécution, tu as du t'appuyer sur la classe SQLiteOpenHelper. Est-ce bien le cas ?
  9. Non, il faut seulement que l'appli soit lancée UNE fois manuellement après installation, pour que le lancement automatique au prochains boots soit active, pas à chaque boot (sinon l'intent BOOT_COMPLETED ne servirait à rien) ...
  10. Bonjour, Sur les versions récentes d'Android (depuis 3.1 il me semble), une application doit avoir été démarrée manuellement au moins une fois afin qu'elle puisse ensuite recevoir l'intent BOOT_COMPLETED. Il faut donc que ton application ait au moins une activité, et que celle-ci soit activée manuellement une fois pour que cela puisse fonctionner.
  11. Peut-être que personne (à commencer par moi) ne comprend vraiment ce que tu veux faire / le(s) problème(s) que tu rencontres... Balancer tout le code de ton appli (en espérant qu'on le corrige pour toi ?) ne suffit pas. Essaye d'être un peu plus précis, et d'isoler où le problème se situe (en t'aidant du debugger / en mettant des logs). Est-ce un problème réseau ? ou bien récupère-tu bien le XML et c'est alors un pb de parsing dudit XML ? ou bien c'est l'insertion d'un élément dans la base au final ?? Merci
  12. mesLivraisons est donc à null, ce qui est normal, vu que tu la déclares et l'initialise à null 3 lignes au dessus...
  13. Et quelle est l'erreur ? (stacktrace dans le LogCat ?)
  14. Et quel est le problème que tu rencontres maintenant quand tu appelles la méthode openAndQueryDatabase ?
  15. Bonjour, Comme te l'indique la stacktrace, tu as un NullPointerException en ligne 156 de ton fichier EventBDD.java. Tu dois probablement utiliser un objet qui n'a pas été initialisé....