Search code examples
javaandroidinterfacebroadcastreceiver

Broadcastreceiver or interface to communicate between 2 activities?


Should i use an interface or a broadcastreceiver to send data between 2 activities?

For communication between my fragment and activities i opted for an interface, but can i also use an interface between 2 activities?

Both do the same, but which one i preferred for activity to activity communication?

Interface for my fragment-activity

Activity

public class MainActivity extends AppCompatActivity implements SongsFragment.OnClickSong { 
... }

@Override
public void onClickSongTab1(int position, ArrayList<Song> songs) {
...
}

Fragment

public interface OnClickSong{
    void onClickSongTab1(int position, ArrayList<Song> songList);
}

@Override
public void onClickSong(int position, ArrayList<Song> songList) {

    onClickSongListener.onClickSongTab1(position, songList);

}

EDIT

I want to send data to an already running activity.


Solution

  • For activity to activity communication you can use Intent with extra bundles.

    Intent intent = new Intent(this, <Activity destination class type>);
    intent.putExtra("<key>",<value>);
    startActivity(intent);