¿Cómo obtener datos de otras actividades en android?

Tengo dos actividades como Activity A y B y estoy tratando de pasar dos cadenas diferentes de A a B usando Bundle y startActivity(intent) .

Como eso:

 Intent intent = new Intent(A.this, B.class); Bundle bundle = new Bundle(); bundle.putString("vidoedetails", filedetails); //bundle.putString("videoname", filename); intent.putExtras(bundle); //intent.putExtra("videofilename", filename); //intent.putExtra("vidoefiledetails", filedetails); startActivity(intent); 

Y en la clase B estoy usando dos TextView s para mostrar las cadenas de la clase A por separado.

Como eso:

 Intent i = getIntent(); Bundle extras = i.getExtras(); filedetails = extras.getString("videodetails"); filename = extras.getString("videoname"); 

El problema es que filedetils se imprimen en la clase B pero no el nombre del archivo.

¿Alguna solución para esto?

Usted tiene un error tipográfico:

 bundle.putString("vidoedetails", filedetails); 

debiera ser

 bundle.putString("videodetails", filedetails); 

Sé que tengo 9 días de retraso en esta respuesta, pero este es un buen ejemplo de por qué creo una clase de constantes. Con una clase de constantes, no importa si está mal escrita ("video" -> "vidoe") porque será "mal escrita" en ambos lugares, ya que lo está haciendo referencia a través de una ubicación bien conocida.

Constantes.java

 public static String WELL_KNOWN_STRING "org.example.stackoverflow.4792829"; 

Actividad1.java

 bundle.putString(Constants.WELL_KNOWN_STRING, filedetails); 

Actividad2.java

 filedetails = extras.getString(Constants.WELL_KNOWN_STRING); 

Sí, escribió erróneamente videodetails:
Suyo: vid * OE * detalles
Correcto: vid * EO * detalles

 // First activity actvty_btn.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { Intent i = new Intent(v.getContext(),SECONDACTIVITY.class); startActivityForResult(i, STATIC_INTEGER_VALUE); } }); /* This function gets the value from the other activity where we have passed a value on calling this activity */ public void activity_value() { Intent i = getIntent(); Bundle extras=i.getExtras(); if(extras !=null) { // This is necessary for the retrv_value rtrv_value = extras.getString("key"); if(!(rtrv_value.isEmpty())) { // It displays if the retrieved value is not equal to zero myselection.setText("Your partner says = " + rtrv_value); } } } // Second activity myBtn.setOnClickListener(new View.OnClickListener () { public void onClick(View v) { Intent intent = new Intent(v.getContext(), FIRSTACTIVITY.class); Bundle bundle = new Bundle(); bundle.putString("key", txt1.getText().toString()); // Here key is just the "Reference Name" and txt1 is the EditText value intent.putExtras(bundle); startActivity(intent); } }); 

Esta es otra forma de pasar datos entre Actividades. Esto es sólo un ejemplo de un tutorial que estaba siguiendo. Tengo una pantalla de bienvenida que se ejecuta durante 5 segundos y, a continuación, podría matar el clip de sonido de:

 @Override protected void onPause() { super.onPause(); ourSong.release(); } 

Decidí que quería que el clip de sonido siguiera jugando en la siguiente actividad mientras todavía era capaz de matar / lanzar desde allí, así que hice el clip de sonido, objeto MediaPlayer, público y estático, similar a cómo en System.out es un Objeto público estático. Ser nuevo en Android dev pero no nuevo en Java dev, lo hice de esta manera.

 import android.app.Activity; import android.content.Intent; import android.media.MediaPlayer; import android.os.Bundle; public class Splash extends Activity { public static MediaPlayer ourSong; // <----- Created the object to be shared // this way @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.splash); ourSong = MediaPlayer.create(Splash.this, R.raw.dubstep); ourSong.start(); Thread timer = new Thread() { public void run() { try { sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); } finally { Intent openStartingPoint = new Intent( "expectusafterlun.ch.androidtutorial.MENU"); startActivity(openStartingPoint); } } }; timer.start(); } } 

Luego, desde la siguiente actividad, o cualquier otra actividad, podría acceder a ese objeto de MediaPlayer.

 public class Menu extends ListActivity { String activities[] = { "Count", "TextPlay", "Email", "Camera", "example4", "example5", "example6" }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setListAdapter(new ArrayAdapter<String>(Menu.this, android.R.layout.simple_expandable_list_item_1, activities)); } @Override protected void onPause() { super.onPause(); Splash.ourSong.release(); // <----- Accessing data from another Activity // here } } 
  • "Tomar una foto y presentarla" en modo retrato en Samsung Galaxy S
  • Diferencia entre getExtras (). GetSerializable () y getSerializableExtra ()
  • ¿Qué es una emisión pegajosa?
  • Intención de recibir notificación sobre el evento de conexión BLE en el periférico Android
  • Cómo obtener todos los filtros de intención para la aplicación (con root)
  • Forzar una cámara para abrir siempre en modo retrato en android
  • Abrir navegador en la URL especificada mediante ACTION_VIEW no funciona cuando cromo es el navegador predeterminado
  • ¿Cuál es la diferencia entre la actividad y la intención en Android?
  • BroadcastReceiver onReceive () no llamado cuando se registra dinámicamente
  • Mensaje adicional de intención de Android versus variable estática
  • El concepto de una intención en Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.