How to transfer the Firebase reference to another android activity

后端 未结 1 355
长发绾君心
长发绾君心 2020-12-21 04:53

We have 2 Android activities (activity A and activity B)

Suppose that we instantiated a Firebase reference in activity A. Activity A also handles all user authentica

相关标签:
1条回答
  • 2020-12-21 05:11

    The common way to do this is to pass the URL for the data to the new activity. See for example this method from the Firebase Android Drawing sample:

    private void openBoard(String key) {
        Log.i(TAG, "Opening board "+key);
        Toast.makeText(BoardListActivity.this, "Opening board: "+key, Toast.LENGTH_LONG).show();
        Intent intent = new Intent(this, DrawingActivity.class);
        intent.putExtra("FIREBASE_URL", FIREBASE_URL);
        intent.putExtra("BOARD_ID", key);
        startActivity(intent);
    }
    

    The new activity then reads the URL and constructs a new Firebase reference:

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Intent intent = getIntent();
        final String url = intent.getStringExtra("FIREBASE_URL");
        final String boardId = intent.getStringExtra("BOARD_ID");
        Log.i(TAG, "Adding DrawingView on "+url+" for boardId "+boardId);
        mFirebaseRef = new Firebase(url);
    

    The authentication state is indeed maintained between these calls. The Firebase SDK maintains a single connection to the server for an application session and each Firebase reference is a lightweight reference on top of that.

    0 讨论(0)
提交回复
热议问题