Jump to content
Sign in to follow this  
Burn2

[Questions+Architecture] Diverses questions pour mon futur dev

Recommended Posts

Autre question, on fait comment sous android 1.5 pour tester si l'écran est allumé??

boolean isScreenOn() n'existe pas visiblement sur cette version du sdk. Je sèche un peu voir totalement là.

Share this post


Link to post
Share on other sites

Comme je t'avais répondu par mail ça ne marcherait pas. ;)

Mais merci de ta réponse.

Share this post


Link to post
Share on other sites

Sinon une personne m'a donnée une idée assez intéressante: afficher un message ou l'utilisateur doit répondre.

Problème, comment attendre 10 ou 20s en affichant ce message pour qu'il réponde s'il est actif? (je pense que je vais encore me prendre un ce programme ne répond pas de la part d'android :/)

Edited by Burn2

Share this post


Link to post
Share on other sites

J'étais tombé dessus lors de mes recherches effectivement, mais toujours pas sûr que ça convienne à ce que je cherche.

Sinon je viens de recevoir mon pavé de 500 pages, j'ai regardé il a l'air bien fait. Donc je vais le parcourrir un peu pour la partie "découverte" puis je vais pouvoir puiser dedans en allant directement dans la partie utile. :)

APrès faudra bien que je fasse gaf à ce qui est propre au sdk 2.X vu qu'il est basé sur le sdk 2.X et que ma base de cette application est android 1.5

Edited by Burn2

Share this post


Link to post
Share on other sites

Bon allez les problèmes avec java continuent:

Quelqu'un peut m'expliquer pourquoi:

EditText profileName= (EditText) findViewById(R.id.EditTextProfileName);
                  Toast.makeText(ProfilePanel.this,"|"+profileName.getText().toString()+"|",Toast.LENGTH_SHORT).show();
                  if ((profileName.getText().toString())!="OFF")
                                                              savePanelProfile1();
                                                       else
[...]

Le toast m'affiche bien "|OFF|" Alors pourquoi malgré mon if qui teste si ce n'est pas egal à OFF je rentre quand même dedans et ne vais pas dans le else????

Share this post


Link to post
Share on other sites

En Java, les variables contiennent des référénces vers des instances d'objet (en gros, des pointeurs).

Si deux variables pointent vers des instances d'objet différentes, == sera forcément faux. Concrètement, ce ne sont pas les mêmes objets. La méthode .equals() qui est portée par les objets permet au dévelopeur de la classe de spécifier les critères qui font que fonctionnellement, deux objets sont égaux.

Edited by Nivek

Share this post


Link to post
Share on other sites

Ok merci de ce complément d'information. :)

c'était tout ce genre de truc qui m'a toujours rebuté sur java.

Des trucs qui paraissent tout à fait logique pour nous (dans le sens c'est comme ça dans tous les autres langages que je connais) ne le sont pas en java.

(les problèmes les plus courants: caster un int en boolean, ça se fait tout seul en C++/C# par exemple, puisque par définition 1=true, 0=false dans la logique boolean... mais là non... ; les comparaisons de strings qui ne marchent pas en faisant juste ="" alors que c'est le cas dans les autres langages. Le fonctionnement du spinner bien tarabiscoté :D).

C'est pour ça qu'a l'époque je n'avais guère accroché, je passe mon temps à toujours réagir comme il ne faudrait pas et donc à chercher l'équivalent de ce que je fais naturellement. :/

M'enfin bon je m'en sors quand même. Mais je trouve ça vraiment farfelu dans le fonctionnement.

Edited by Burn2

Share this post


Link to post
Share on other sites

Oui après c'est plus une histoire de logique, le c++ est un langage qui colle bien à ma logique (associé au QT c'est parfait pour moi).

Mais alors le java, je passe mon temps à tout chercher sans comprendre pourquoi ça ne marche pas comment ça devrait (ou à chercher une fonction qui est ailleurs).

Share this post


Link to post
Share on other sites

On fait comment pour patienter lors de l'ouverture d'une activity???

intent.setData(Uri.parse("/poweroff/"));              
                      startService(intent);

                   Intent i = new Intent(ConfigurationPanel.this, com.Burn2.Sleepytux.ProfilePanel.class);
                   Bundle objetbunble = new Bundle();
                   objetbunble.putString("profileName",spinner.getSelectedItem().toString());
                   i.putExtras(objetbunble );
                   startActivity(i);
                   //refresh the screen
                   refresh();

                   //we restart the service
                   intent=new Intent(ConfigurationPanel.this,SleepytuxService.class);
                      startService(intent);

Je pensais bêtemement que ça allait patienter au start activity sauf que non tout se déroule.

Comment on fait pour patienter derrière ou pour mapper la fermeture de l'activity afin de relancer le service et rechargé lors de la fermeture de la fenêtre? (même un startActivityforResult n'est pas blocant! :o)

J'ai vu des solutions en java mais rien trouvé concernant des activity d'android. :/

EDIT: bon je me suis débrouillé avec:

startActivityForResult()

et on result

mais je pense qu'il doit y avoir une autre solution non?

Edited by Burn2

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  





×
×
  • Create New...