Bonjour à tous!
Voilà, j'aimerais savoir comment lancer une application téléchargée depuis le market(exemple: Angry Birds) à l'aide d'un intent?
Pouvez-vous me donner la procédure ou bien m'éclairer svp??
Merci!![]()
Bonjour à tous!
Voilà, j'aimerais savoir comment lancer une application téléchargée depuis le market(exemple: Angry Birds) à l'aide d'un intent?
Pouvez-vous me donner la procédure ou bien m'éclairer svp??
Merci!![]()
Bonjour,
Tu peux appeler une application via son namespace :
exemple :
C'est pour appeler l'application Codebar.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Intent intentScan = new Intent("com.google.zxing.client.android.SCAN"); intentScan.addCategory(Intent.CATEGORY_DEFAULT); try { activity.startActivityForResult(intentScan, REQUEST_CODE); } catch (ActivityNotFoundException e) { showDownloadDialog(activity, stringTitle, stringMessage, stringButtonYes, stringButtonNo); }
Cordialement,
Merci beaucoup pour ton aide!
Par contre, faut-il que je le déclare dans le Manifest??
Si oui, comment??
Il n'y a rien besoin de rajouter dans le manifeste. juste ces lignes de commandes. Si ça ne démarre pas c'est que le namespace est faux.
Bonjour
j'ai le même problème mais malgrés ce post et celui-ci je n'ai pas réussi à la résoudre.
En fait j'aimerais lancer une application depuis une autre mais ceux sont deux applis que j'ai moi-même créer.
Pour celà j'ai tester le code
(je lance mon appli par un clic sur le bouton pont1)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 pont1.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { Intent intent = new Intent(Intent.ACTION_RUN); intent.setComponent(new ComponentName("com.gatab", "GaTabAct")); startActivity(intent); } });
et j'ai les erreurs suivantes lorsque je clique sur mon bouton :
J'ai essayé le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 07-20 11:43:43.405: ERROR/AndroidRuntime(806): FATAL EXCEPTION: main 07-20 11:43:43.405: ERROR/AndroidRuntime(806): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.gatab/GaTabAct}; have you declared this activity in your AndroidManifest.xml? 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1404) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1378) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.app.Activity.startActivityForResult(Activity.java:2817) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.app.Activity.startActivity(Activity.java:2923) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at com.gaside.Gaside$1.onClick(Gaside.java:39) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.view.View.performClick(View.java:2408) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.view.View$PerformClick.run(View.java:8816) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.os.Handler.handleCallback(Handler.java:587) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.os.Handler.dispatchMessage(Handler.java:92) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.os.Looper.loop(Looper.java:123) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at android.app.ActivityThread.main(ActivityThread.java:4627) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at java.lang.reflect.Method.invokeNative(Native Method) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at java.lang.reflect.Method.invoke(Method.java:521) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 07-20 11:43:43.405: ERROR/AndroidRuntime(806): at dalvik.system.NativeStart.main(Native Method)
Mais REQUEST_CODE est souligné en rouge (Eclipse me propose de créer la variable) et GaTabAct aussi (Eclipse me propose de créer la classe ou la constante)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Intent intentScan = new Intent("com.gatab"); intentScan.addCategory(Intent.CATEGORY_DEFAULT); try { GaTabAct.startActivityForResult(intentScan, REQUEST_CODE); } catch (ActivityNotFoundException e) { Log.d("tag","activitynotfound"+e.toString()); }
Il est possible que j'ai mal compris comment appliquer ce code mais pourriez-vous m'expliquer? Merci!
Bonjour,
Voici la méthode que j'utilise pour lancer une Activity d'une application tierce :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Intent i = getPackageManager().getLaunchIntentForPackage(package_name); if (i != null) { startActivity(i); }
Génial c'est plus simple que ce que j'avais et ça marche =) Merci beaucoup!
Maintenant si l'application que je souhaite lancer posséde plusieurs activité est-il possible de choisir quelle activité de mon appli j'affiche?
L'appli que je souhaite lancer extends TabActivity :
Et dans l'appli qui va lancer celle ci-dessus j'ai créer 3 boutons selon celui que lequel je clique j'aimerais accéder à mon activité pont 1, pont 2 ou pont 3. Comment puis-je faire celà? pour l'instant je lance toujours le même pont soit celui que je choisi avec cette ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 public class GaTabAct extends TabActivity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TabHost tabHost = getTabHost(); TabHost.TabSpec spec; Intent intent; intent = new Intent().setClass(this, Pont6.class); spec = tabHost.newTabSpec("pont1").setIndicator(" Pont 1 ").setContent(intent); tabHost.addTab(spec); intent = new Intent().setClass(this, Pont6.class); spec = tabHost.newTabSpec("pont2").setIndicator(" Pont 2 ").setContent(intent); tabHost.addTab(spec); intent = new Intent().setClass(this, Pont6.class); spec = tabHost.newTabSpec("pont3").setIndicator(" Pont 3 ").setContent(intent); tabHost.addTab(spec); tabHost.setCurrentTab(2); } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part tabHost.setCurrentTab(2);
Dernière modification par Invité ; 20/07/2011 à 16h32.
Partager