Profete162 Posté(e) 20 février 2010 Share Posté(e) 20 février 2010 (modifié) Salut à tous, ma question simple est résumée dans le titre. Elle permettra peut-être à certaines personnes de comprendre lancer leur appli avec le bouton chercher, et j'en profite pour la poser... :P Je me suis rendu compte qu'il était assez simple de lancer une application avec le bouton search ( appui long ) en mettant dans le manifest cette simple ligne: Mais incroyablement, faire de même avec le buton caméra semble assez complexe! Il ne suffit pas de rajouter cette ligne: J'ai aussi essayé de rajouter un BroadcastReceiver: public class CameraStart extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //Toast.makeText(context, "Test is a Succes! Thank you!", Toast.LENGTH_LONG).show(); Intent i = new Intent(); i.setClassName( "com.profete162.TaskOS", "com.profete162.TaskOS.TaskOS" ); context.startActivity(i); } } Mais en fait ( je n'ai qu'un Hero pour tester, donc pas de bouton camera et l'émulateur ne veut pas pousser sur ce bouton, c'est le seul bouton de l'émulateur qui n'est pas clickable chez moi..) ca fait des erreurs fatales à tout de bout de champs et je n'ai pas encore trouvé un utilisateur avec un G1 ou Droid qui puisse m'aider. Modifié 20 février 2010 par Profete162 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Pierre87 Posté(e) 21 février 2010 Share Posté(e) 21 février 2010 CQFD pas dispo sur tous les téléphone = ne pas trop compter sur lui dans son programme merci pour l'astuce ! (karmaaaaaaaaaa *petite musique*) moi c'est plutot le fait que la premiere solution soit aussi simple qui m'étonne ! Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Profete162 Posté(e) 21 février 2010 Auteur Share Posté(e) 21 février 2010 (modifié) pour info, xma m'a gentillement aidé, voici le log qu'il recoit: java.lang.RuntimeException: Unable to start receiver com.profete162.TaskOS.CameraStart: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? Je ne comprends pas vraiment ou mettre ce "FLAG_ACTIVITY_NEW_TASK". Quand je le fais depuis le code: c'est facile, je fais ceci: i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); Mais comme c'est fait depuis le manifest, je ne vois pas ou mettre cette valeur! Un peu de doc ici: http://developer.android.com/intl/fr/guide/topics/fundamentals.html mais incompréhensible Modifié 21 février 2010 par Profete162 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Pierre87 Posté(e) 21 février 2010 Share Posté(e) 21 février 2010 J'ai déjà eu cette erreur, je voulais ouvrire une Activity depuis le onCreate() de mon Application Ca se produite quand le Thread depuis lequel tu démarres l'Activity n'a pas le bon "context" (mais je suppose que tu sais >.<) ça ne marche pas quand tu le mets dans le OnReceive de ton CameraStart ? c'est la que je le mettrai ... Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Profete162 Posté(e) 13 mars 2010 Auteur Share Posté(e) 13 mars 2010 Bon, j'ai enfin eu un prêt de téléphone avec un bouton camera. La méthode du premier post fonctionne bien et je lance sans soucis mon appli avec le bouton camera. Youpiiie. Petit soucis: 1) contrairement au bouton "chercher", Android ne demande pas quelle appli lancer par défaut. L'utilisateur est donc perdant car on ne sait pas lui demander son avis. Ce n'est pas encore trop grave, je pense que je peux régler cela avec les préférences de mon appli. 2) plus embêtant. J'ai décidé d'afficher un message toast dans mon receiver, il s'affiche bien, mais la caméra se lance aussi... Je n'ai pas envie de la killer en même temps que je lance mon appli, ca me parait ridicule! Toute idée et réaction de votre bpart est bonne à prendre car je sèche! Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Pierre87 Posté(e) 13 mars 2010 Share Posté(e) 13 mars 2010 Moi ce qui me parait ridicule, c'est de vouloir attribuer une fonction a une touche qui se trouve sur tres peu de telephones :D Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Profete162 Posté(e) 13 mars 2010 Auteur Share Posté(e) 13 mars 2010 (modifié) Moi ce qui me parait ridicule, c'est de vouloir attribuer une fonction a une touche qui se trouve sur tres peu de telephones :D Bien, le bouton chercher est sur beaucoup de téléphones. Tous mes utilisateurs sont super contents car ils ont le chois de laisser l'action par défaut sur le bouton chercher. Puis il y a tous les utilisateurs qui me renvoient des mails tous les jours en me disant " I get no search button on my device, please do something to fix this and make a hardware button launch" J'ai donc décidé de faire plaisir à ces utilisateurs. Il y en a qui ont un bouton chercher ET un bouton caméra, seulement un bouton chercher, ou seulement un bouton caméra.... Vox populi.. vox dei. Modifié 13 mars 2010 par Profete162 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Pierre87 Posté(e) 13 mars 2010 Share Posté(e) 13 mars 2010 haaaaaaaaaaaaaaaaaaaaaaaaa oki oki Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
philippe75017 Posté(e) 12 janvier 2011 Share Posté(e) 12 janvier 2011 bonjour profete162 et merci pour cette appli taskOS pour info, sur mon acer liquid sous froyo avec inferface breeze (celle d'acer) : - taskOS peut être appelé par le bouton photo, mais le bouton est peu facile d'accès sur les liquid, et c'est lent - le bouton "recherche" lance google et non taskOS ! - en revanche, dans la barre de statut, icône notifications, j'ai maintenant une entrée pour taskOS "taskOS : clik to open" et je suis très content de l'appli :) ph. Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Rejoignez la conversation
Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.