blob: 57d62e93587c96e74857a6a26fb44c40ce51dcdd [file] [log] [blame]
// Copyright 2013 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 dev.flutter.android_background_image;
import android.content.Intent;
import android.util.Log;
import androidx.annotation.NonNull;
import io.flutter.embedding.android.FlutterActivity;
import io.flutter.embedding.engine.FlutterEngine;
import io.flutter.plugin.common.BinaryMessenger;
import java.nio.ByteBuffer;
public class MainActivity extends FlutterActivity {
@NonNull
private final BinaryMessenger.BinaryMessageHandler finishHandler =
new BinaryMessenger.BinaryMessageHandler() {
@Override
public void onMessage(ByteBuffer message, final BinaryMessenger.BinaryReply callback) {
if (message != null) {
// Make CI see that there is an error in the logs from Flutter.
Log.e("flutter", "Images did not match.");
}
final Intent intent = new Intent(MainActivity.this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
MainActivity.this.startActivity(intent);
MainActivity.this.finish();
}
};
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
flutterEngine
.getDartExecutor()
.getBinaryMessenger()
.setMessageHandler("finish", finishHandler, null);
final boolean moved = moveTaskToBack(true);
if (!moved) {
Log.e("flutter", "Failed to move to back.");
finish();
}
}
}