blob: 839d696a3705dca66f6d227792c198ee696159f5 [file] [log] [blame]
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package com.example.view;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;
import io.flutter.plugin.common.BasicMessageChannel;
import io.flutter.plugin.common.BasicMessageChannel.MessageHandler;
import io.flutter.plugin.common.BasicMessageChannel.Reply;
import io.flutter.plugin.common.StringCodec;
import io.flutter.view.FlutterMain;
import io.flutter.view.FlutterRunArguments;
import io.flutter.view.FlutterView;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
private FlutterView firstFlutterView;
private FlutterView secondFlutterView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FlutterMain.ensureInitializationComplete(getApplicationContext(), null);
setContentView(R.layout.flutter_view_layout);
ActionBar supportActionBar = getSupportActionBar();
if (supportActionBar != null) {
supportActionBar.hide();
}
FlutterRunArguments firstRunArguments = new FlutterRunArguments();
firstRunArguments.bundlePath = FlutterMain.findAppBundlePath(getApplicationContext());
firstRunArguments.entrypoint = "first";
firstFlutterView = findViewById(R.id.first);
firstFlutterView.runFromBundle(firstRunArguments);
FlutterRunArguments secondRunArguments = new FlutterRunArguments();
secondRunArguments.bundlePath = FlutterMain.findAppBundlePath(getApplicationContext());
secondRunArguments.entrypoint = "second";
secondFlutterView = findViewById(R.id.second);
secondFlutterView.runFromBundle(secondRunArguments);
}
@Override
protected void onDestroy() {
if (firstFlutterView != null) {
firstFlutterView.destroy();
}
if (secondFlutterView != null) {
secondFlutterView.destroy();
}
super.onDestroy();
}
@Override
protected void onPause() {
super.onPause();
firstFlutterView.onPause();
secondFlutterView.onPause();
}
@Override
protected void onPostResume() {
super.onPostResume();
firstFlutterView.onPostResume();
secondFlutterView.onPostResume();
}
}