Aller au contenu

nbbu

Membre
  • Compteur de contenus

    85
  • Inscription

  • Dernière visite

Messages posté(e)s par nbbu


  1. Quelqu'un sait comment supprimer le son "clic-clic" quand on tape au clavier ? (le clavier azerty pas le clavier tél)

    ... sans bien sûr couper le son complétement (sourdine) :P

    Je me réponds ... ça peut servir à quelqu'un.

    En fait ce n'est pas dans le menu son mais dans le menu langue / clavier. Cliquez sur l'icone de configuration du clavier que vous avez choisi puis "sons de frappe" .


  2. Quelqu'un sait comment supprimer le son "clic-clic" quand on tape au clavier ? (le clavier azerty pas le clavier tél)

    ... sans bien sûr couper le son complétement (sourdine) :P

    Sinon j'ai trouvé un défaut à ce télétablette --> pas de led de notification :mad:


  3. Moi aussi j'ai craqué et après un week end d'utilisation j'en suis très content !

    J'avoue avoir été bluffé par les perfs. L'utilisation est vraiment fluide même en surf avec chrome. Ayant la TF700T en quad core j'avais un peu peur avec cette tablette et son cpu intel simple coeur.

    L'autonomie est vraiment bonne. Après 1h30 d'utilisation de tests (chrome, NFS, dropbox, ...) j'avais perdu 15% de batterie (luminosité faible).


  4. Bonjour,

    J'aimerai avoir un retour concernant la consommation de votre tablette TF700T en veille.

    Je trouve la mienne excessive.

    Je perds 20% de batterie (100%->80%) en 16 heures sans l'allumer.

    En statistique d'utilisation j'ai :

    - Tablette inactive 55%

    - Plateforme Android 17%

    Avant c'était le wifi, mais maintenant il est éteint quand la tablette est en veille. J'ai déjà effectué deux cycles de vidage->chargement (<10% puis chargement jusqu'à 100% pendant plus de 8 heures)

    Sinon je suis super content de cette tablette, mais si ce pb persiste, c'est retour en magasin ! Je compare à mon iPad 1 qui a 2 ans et qui ne perd que 1 à 2% par jour grand max en veille.

    Merci de votre aide


  5. bonjour,

    le sujet est un peux vieux mais je suis dans la même attente :)

    Comme le dit chpil, qu'importe la source pourvu que tu aies du InputStream.

    Donc si ton fichier se trouve dans tes assets tu fais :

    InputStream input = context.getAssets().open("test.xml");
    parseur.parse(input, handler);
    

    Plus généralement si ton fichier a été créé dynamiquement via

    this.openFileOutput("test.xml");
    

    Tu fais :

    InputStream input = this.openFileInput("test.xml");
    parseur.parse(input, handler);
    


  6. Une équipe de dev a réalisé un environnement complet de dev (IDE) sur Android, ce qui permet de programmer directement sur sa tablette ou son téléphone

    Dispo sur le market : {AIDE}

    Ceux qui ont une tablette type transformer avec clavier vont se régaler :P

    Un des points forts est le lancement direct des applis sans avoir à passer par un émulateur. On est sûr du résultat et surtout on est plus obligé d'avoir une super machine de dev (sur mon macbook air l'autonomie est divisée par 3 quand l'émulateur tourne)

    Je ne l'ai pas encore testé, mais les premiers retours sont très positifs.


  7. Moi je ne dis rien mais ça m'intéresse beaucoup aussi
    

    Cool on se sent moins seul :)

    De mon coté j'ai jeté un coup d’œil sur le code de Romain Guy (Shelves) cité plus haut dans lequel il parle de persistance de tâches. La solution comporte la même difficulté que dans ton cas de service, c'est à dire la sérialisation des données. En fait sur le onSaveInstanceState il sérialise les taches en cours dans un Bundle. Dans son cas c'est assez simple puisque la tache consite au téléchargement d'un livre lié à son numéro isbn. Il stocke donc ce numéro pour pouvoir le télécharger de nouveau lors du onRestoreInstanceState.

    Ton cas est beaucoup plus tricky étant donné que c'est un SMS. Je pense en plus que tu risque d'être confronté au fait qu'il s'agisse d'un evt que du veux capturer ou laisser passer et que dans ce cas la vitesse de traitement est assez critique.


  8. Ce thread (je parle de ta question) devient vraiment très intéressant :lol:

    Donc si je comprends bien,
    en tout cas je comprends la même chose :P

    Donc j'ai parsé parcouru la doc ici :

    http://developer.and...nd-threads.html

    et j'ai repéré cette phrase :

    Caution: Another problem you might encounter when using a worker thread is unexpected restarts in your activity due to a runtime configuration change (such as when the user changes the screen orientation), which may destroy your worker thread. To see how you can persist your task during one of these restarts and how to properly cancel the task when the activity is destroyed, see the source code for the Shelves sample application.

    C'est exactement le cas qui nous intéresse. Persister le traitement fait dans l'AsychTask.

    Bon je sais pas si je vais avoir le temps de lire ça avant le réveillon ... je voudrais pas faire mon no-life...

    On en rediscute l'année prochaine si tu veux bien :lol:


  9. Malheureusement la doc est très claire à ce sujet :

    A BroadcastReceiver object is only valid for the duration of the call to onReceive(Context, Intent)

    anything that requires asynchronous operation is not available, because you will need to return from the function to handle the asynchronous operation, but at that point the BroadcastReceiver is no longer active and thus the system is free to kill its process before the asynchronous operation completes.

    Donc je ne vois pas trop d'autres solutions à part peut être faire un abort systématique, faire le traitement en dehors du BroadcastReceiver, puis en fonction du résultat (via la surcharge de onPostExecute) re-broadcaster ou non via sendBroadcast.

    C'est juste une idée comme ça, je ne sais pas si c'est réalisable ... :emo_im_undecided:

    Dans tous les cas, tiens nous au courant de tes expérimentations passionnantes :P


  10. Il faut faire un import->existing project into workspace et sélectionner library

    Il ne doit y avoir aucune erreur avant de faire l'export en jar.

    N'oublie pas de mettre android-support-v4.jar dans un répertoire lib et ensuite de faire :

    java build path -> library -> add jar et séléctionne le

    bon apprendre à programmer tout seul c'est relou !

    Mais t'es pas tout seul, il y a toute la communauté Frandroid avec toi ^_^ et

    il faut dire aussi que tu commences pas par un exemple trivial ! :emo_im_undecided:


  11. C'est un bug qui a été corrigé par notre compatriote Mr Romain GUY

    http://groups.google...9bad2620e38496a

    J'ai fait un test en API Level 7 et ça fonctionne bien.

    package com.nbbu.examples.asynctask;
    import android.app.Activity;
    import android.os.Bundle;
    import android.os.AsyncTask;
    public class AsyncTaskTest extends Activity {
    class MyTask extends AsyncTask<String, Void, Integer>
    {
     @Override
      protected Integer doInBackground(String ... x) {  
    	System.out.println("Start processing " + x[0]);
    	try {
    	 Thread.sleep(6000);
    	} catch (InterruptedException ie) {
    	 ie.printStackTrace();
    	}	
    	System.out.println(x[0] + " processed");
     return 0;
      }
     };
     @Override
     public void onCreate(Bundle savedInstanceState) {
    	 super.onCreate(savedInstanceState);
    	 setContentView(R.layout.main);
    	 new MyTask().execute("SMS 1");
    	 new MyTask().execute("SMS 2");		
     }
    }
    

    résultat :

    :03.547: INFO/System.out(326): Start processing SMS 2
    :03.744: INFO/System.out(326): Start processing SMS 1
    :09.603: INFO/System.out(326): SMS 2 processed
    :09.750: INFO/System.out(326): SMS 1 processed
    

    • Like 1

  12. Maven c'est super chouette ... quand c'est bien configuré :lol: sinon :mad:

    D'ailleurs l'auteur du tuto le dit lui même :

    ..., then we can bypass Maven (as it can be tricky to get set up).

    Le plus simple reste d'importer le projet de Jake Wharton et ensuite d'en faire un jar via la commande export d'éclipse. Enfin c'est ce que j'ai fait, ça prend quelques minutes ...


  13. salut merci pour ta reponse j'ai aime la premiere solution car les 2 autres ne pourront pas etre utilise lorsque cette personne voyage..

    mais est-ce-que tu peux m'en donner plus de detail? merci.

    La méthode 3 doit fonctionner à l'étranger si l'utilisateur a activé l'option monde (roaming). Le téléphone trouvera l'opérateur local du pays. D'ailleurs cette méthode s'utilise plus simplement via la même API Google que pour la géolocalition gps/wifi :

    LocationListener locationListener = new LocationListener() {
    public void onLocationChanged(Location location) {
     Geocoder  gc = new Geocoder(this);
    List<Address> MesAdd = gc.getFromLocation(location.getLatitude(),location.getLongitude(),1)
    // si tu as une adresse valide alors
    MesAdd[0].getCountryName();										 							 			
    }
    
    };
    LocationProvider locationProvider = LocationManager.NETWORK_PROVIDER; // relais gsm ou wifi
    locationManager.requestLocationUpdates(locationProvider, 0, 0, locationListener);
    

    Je n'ai pas testé ce code mais ça devrait fonctionner. Tu peux tester avec l'émulateur en envoyant des coordonnées fictives. (voir paragraphe Providing Mock Location Data de l'url proposé par chpil)


  14. A part via le GPS, je vois 3 solutions.

    1/ L'API google te permet de trouver tes coordonnées GPS via le Wifi.

    2/ Récupérer le pays déclarer dans le téléphone lors de sa configuration.

    getLocale().getDisplayCountry()
    

    Pas forcément fiable car dépend de ce qu'à renseigner le propriétaire.

    3/ Une autre solution est de déterminer le pays à partir du code opérateur téléphonique (MNC/MCC):

    TelephonyManager.getNetworkOperator()
    

    en croisant le code avec cette liste tu en déduis le pays

    Mais ces méthodes ne seront jamais aussi fiable que l'utilisation du GPS ...


  15. J'espère que tu as trouvé la solution, car une migraine qui dure depuis novembre, dur ,dur :)

    Si d'autres sont intéressés ... voilà :

    Le lien fourni par chpil est celui qui m'a permis de débuter dans les widgets.

    Dans ton cas précis, il faut ajouter dans la méthode onUpdate :

    juste après la ligne :

    RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.ton_appwidget_provider_layout);
    

    la ligne suivante pour changer ton image (badge_rouge)

    remoteView.setImageViewResource(R.id.badge_rouge, BADGES[badgeNum]);
    

    voilà, ensuite n'oublie pas de faire :

    appWidgetManager.updateAppWidget(appWidgetId, views);
    

    C'est comme cela que je mets à jour l’icône de la dernière application installée dans mon widget DynamicDock

    Dans tous les cas ne perd pas patience, les widgets sont assez délicats à coder

    :P

×
×
  • Créer...