Aller au contenu

Simuler un clic.


m.borghesi

Recommended Posts

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 ?

Lien vers le commentaire
Partager sur d’autres sites

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.

Lien vers le commentaire
Partager sur d’autres sites

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.

Lien vers le commentaire
Partager sur d’autres sites

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.

Lien vers le commentaire
Partager sur d’autres sites

ç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"

Lien vers le commentaire
Partager sur d’autres sites

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);

}

});

Lien vers le commentaire
Partager sur d’autres sites

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")));

Lien vers le commentaire
Partager sur d’autres sites

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.

Lien vers le commentaire
Partager sur d’autres sites

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à.

Lien vers le commentaire
Partager sur d’autres sites

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!

Lien vers le commentaire
Partager sur d’autres sites

Archivé

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

×
×
  • Créer...