2010-07-27 8 views

Répondre

2

Probablement que vous cherchez un moyen de commencer une autre classe d'un autre paquet

Intent myIntent = new Intent(); 
myIntent.setClassName("com.android.samples", "com.android.samples.Animation1"); 
myIntent.putExtra("com.android.samples.SpecialValue", "Hello, Joe!"); // key/value pair, where key needs current package prefix. 
startActivity(myIntent);  

Lire un post tutoriel sur Opening a Screen à Tâches courantes de poste.

1

Vous pouvez lancer d'autres applications avec Activity.startActivity (intention);

utiliser comme ceci:

Intent intent = new Intent(); 
String pkg = "com.android.browser"; 
String cls = "com.android.browser.BrowserActivity"; 
intent.setClassName(pkg, cls); 
startActivity(intent); 

Vous devez connaître les noms de paquets et de classe de l'activité à appeler, le navigateur de paquet dans l'application Outils Dev vous aidera ici si ce ne est pas votre propre application pour appeler .

+2

S'il vous plaît noter que l'utilisation des constantes manuscrites comme « com.android.browser » et « com .android.browser.BrowserActivity "utilise des détails d'implémentation privés (ceux-ci ne font pas partie du SDK), et vous devriez donc vous attendre à ce que ce code transgresse différents périphériques et versions de plate-forme. – hackbod

3

Vous devez utiliser la fonction du gestionnaire de paquets.

try { 
    Intent i = ctx.getPackageManager().getLaunchIntentForPackage("com.android.browser"); 
    ctx.startActivity(i); 
} catch (NameNotFoundException e) { 
    // TODO Auto-generated catch block 
} 
Questions connexes