Aller au contenu

Simuler un clic.


m.borghesi

Recommended Posts

Posté(e)

Bonjour,

J'aimerais simuler un clic sur une application de l'android market depuis l'application que je développe.

Es ce possible?

Si oui, comment?

Merci d'avance de vos réponses.

Posté(e)

Non je veux juste effectuer un clic de manière automatique.

Je parle d'une application de l'Android Market pour préciser que ce n'est pas moi qui l'ai développée :-)

Posté(e)

Tu peux faire un lien avec un intent vers le produit ciblé du market, mais faire un clic automatique n'est pas possible, tu ne voudrais pas essayer d'installer un programme à l'insu de l'utilisateur par hasard ?

Posté(e)

Ce n'est normalement pas possible.

Sinon tu verrais fleurir tout un tas d'appli installant automatiquement des applications payantes.

Faut arréter de croire que l'utilisateur est un crétin.

si tu as besoin d'une appli tiers tu lui dit de la télécharger, et tu le rediriges vers la page du market.

Posté(e)

Non je n'essaies pas du tout de faire ça!

En fait, mon appli repose sur une appli déjà existante, et, pour cette dernière il n'y a qu'un bouton (pour une connexion à un serveur)... Mon idée était juste de simplifier la vie de l'utilisateur en faisant le clic à sa place.

Posté(e)

Il n'y en as pas... Je pense m'être mal exprimé.

Quand je parle de "simuler un clic sur une application de l'android market" sur mon premier post, je veux juste sous entendre que je ne suis pas le développeur de cette application...

Posté(e)

Ok, tu voulais dire cliquer sur un bouton d'une appli téléchargée au paravent avec l'android market .

Je comprend vite mais faut m'expliquer longtemps :p

ça change rien au problème. tu ne peux interagir avec l'UI thread d'une autre appli.

Par contre comme dit précédemment, ce bouton lance peut-être un intent.

Dans ce cas tu pourra peut-être le l’appeler toi même sans passer par la couche graphique.

Lances adb logcat et surveille ce qui passe quand tu cliques sur le bouton, tu trouveras (avc un peu de chance) les info n"nécessaire pour faire ton action.

Posté(e)

LOL^^

Malheureusement j'y avais déjà pensé... marche pas, ça plante mon application avec le message d'erreur classique "fermeture soudaine de l'application...".

Une autre idée ? :D

Posté(e)

ça plante lorsque j'essaie de simuler le clic avec l'intent.

au départ le logcat m'affiche : "INFO/ActivityManager(82): Starting activity: Intent { cmp=org.toremote.rdpdemo/com.toremote.RemoteActivity }"

puis

"ERROR/AndroidRuntime(1275): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.toremote.rdpdemo/com.toremote.RemoteActivity}: java.lang.NullPointerException"

Posté(e)

Le voici

((ImageButton)findViewById(R.id.ImageButton01)).setOnClickListener(new OnClickListener()

{

public void onClick(View v)

{

Intent intent = new Intent();

intent.setComponent(new ComponentName("org.toremote.rdpdemo", "com.toremote.RemoteActivity"));

startActivity(intent);

}

});

Posté(e)

Donc là tu essayes de lancer un autre programme ou d'installer un autre programme ?

Edit :

Pour aller sur le market via un intent tu as ça

startActivity(new Intent(Intent.ACTION_VIEW,Uri.parse("market://com.monapplication")));

Posté(e)

J'essaie de lancer un autre programme mais en voulant accéder directement au résultat d'un clic dans ce programme...

En clair, quand j'ouvre le programme il y a un bouton et quand je clic sur ce bouton cela me fait une action. Mon but est d'arriver directement à cette action.

Posté(e)

D'accord

http://developer.android.com/reference/android/content/ComponentName.html

Regarde bien, c'est le package d'abord et la classe ensuite, vérifie que tu n'es pas d’erreurs à ce niveau.

Ensuite

"org.toremote.rdpdemo", "com.toremote.RemoteActivity"

Il a deux packages différents ? un org. et l'autre un com. ? en es-tu vraiment sur, vérifie dans le ddms si le chemin de lancement est correct, je pense que je soucis viens de là.

Posté(e)

Cela m'a semblé bizarre aussi, pourtant c'est bien deux packages différents...

Chose encore plus bizarre si je veux juste accéder au programme (sans simuler le clic sur le bouton) je dois mettre "org.toremote.rdpdemo, "org.toremote.rdpdemo.ServersList" et ça marche nickel!

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...