2012-07-03 3 views
1
Bundle extras = intent.getExtras(); 
if (extras != null) { 
    Toast.makeText(context, "Message recieved", Toast.LENGTH_SHORT).show(); 
} 

Quelle est la valeur stockée dans les extras ..:?Interne travaillant avec intention.getextras()

+0

Pouvez-vous contextualiser votre question, s'il vous plaît? –

+0

Je ne comprends pas .. le fonctionnement de l'intention.getextras. IN d mendiant du programme lui-même sans aucune autre page xml créée

comment pourrais-je obtenir des valeurs en bundle .. –

+0

ce que vous passez en Intention même valeur que vous obtiendrez dans une autre activité comme String title = getIntent(). GetStringExtra ("Titre"); –

Répondre

0

Extras est un Bundle, donc il contiendra généralement une collection de valeurs. De votre fragment de code, il est impossible de dire ce qu'il y a dedans. Cela dépend de ce que le code qui a créé l'intention a mis dans le paquet.

Si vous voulez connaître toutes les clés d'un ensemble, utilisez Bundle.keySet().

En ce qui concerne votre remarque, il n'y a pas de véritable "début d'un programme" dans une application Android. Votre activité est marquée dans le manifeste comme l'activité «lanceur». Si votre activité est démarrée à partir du lanceur, les extras seront vides. Cependant, personne ne vous empêche (ou d'autres applications) de démarrer votre activité manuellement, fournissant des données dans les extras.

Il n'y a pas de magie ici. Si vous ne mettez rien dans les extras, rien ne sort.

+0

Bundle extras = intention.getExtras(); \t \t si (extras! = Null) { \t \t \t chaîne state = extras.getString (TelephonyManager.EXTRA_STATE); \t \t \t Log.w ("DEBUG", état); \t \t \t if (state.equals (TelephonyManager.EXTRA_STATE_RINGING)) { \t \t \t \t chaîne phoneNumber = extras.getString (TelephonyManager.EXTRA_INCOMING_NUMBER); \t \t \t \t Log.w ("DEBUG", phoneNumber); \t \t \t \t System.out.println ("zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"); Toast.makeText (context, "Message reçu", Toast.LENGTH_SHORT) \t \t \t \tmontrer(); \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t} –

+0

désolé je ne cud pas ajouter ce code dans Q. donc ajouté ici :( –

1

Les valeurs stockées dans les extras sont les valeurs que vous avez ajoutées aux extras.

Pour ajouter un supplément à une intention, procédez comme suit avant de le démarrer.

intent = new Intent(v.getContext(),TextActivity.class); 
intent.putExtra("Title", "I am An extra"); 
startActivityForResult(intent, -1); 

Ensuite, dans votre intention, de lire le faire:

String title = getIntent().getStringExtra("Title"); 

Le code dans votre question est simplement poster un message pop-up s'il y a un supplément trouvé. Actuellement, vous n'ajoutez rien aux extras.