Java源码示例:io.flutter.embedding.engine.FlutterEngine
示例1
private void startNextIsolate() {
IsolateHolder isolate = queuedIsolates.peek();
FlutterMain.ensureInitializationComplete(context, null);
if (flutterPluginBinding == null)
isolate.view = new FlutterNativeView(context, true);
else
isolate.engine = new FlutterEngine(context);
FlutterCallbackInformation cbInfo = FlutterCallbackInformation.lookupCallbackInformation(isolate.entryPoint);
FlutterRunArguments runArgs = new FlutterRunArguments();
runArgs.bundlePath = FlutterMain.findAppBundlePath(context);
runArgs.libraryPath = cbInfo.callbackLibraryPath;
runArgs.entrypoint = cbInfo.callbackName;
if (flutterPluginBinding == null) {
isolate.controlChannel = new MethodChannel(isolate.view, NAMESPACE + "/control");
isolate.startupChannel = new EventChannel(isolate.view, NAMESPACE + "/event");
} else {
isolate.controlChannel = new MethodChannel(isolate.engine.getDartExecutor().getBinaryMessenger(), NAMESPACE + "/control");
isolate.startupChannel = new EventChannel(isolate.engine.getDartExecutor().getBinaryMessenger(), NAMESPACE + "/event");
}
isolate.startupChannel.setStreamHandler(this);
isolate.controlChannel.setMethodCallHandler(this);
if (flutterPluginBinding == null) {
registerWithRegistrant(isolate.view.getPluginRegistry());
isolate.view.runFromBundle(runArgs);
} else {
DartExecutor.DartCallback dartCallback = new DartExecutor.DartCallback(context.getAssets(), runArgs.bundlePath, cbInfo);
isolate.engine.getDartExecutor().executeDartCallback(dartCallback);
}
}
示例2
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
GeneratedPluginRegistrant.registerWith(new FlutterEngine(this));
}
示例3
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
// Manually register PluginExample
flutterEngine.getPlugins().add(new PluginExample());
}
示例4
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
}
示例5
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
}
示例6
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
}
示例7
@Override
public void configureFlutterEngine(FlutterEngine flutterEngine) {
flutterEngine.getPlugins().add(new RazorpayFlutterPlugin());
}
示例8
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
}
示例9
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
}
示例10
public static void registerWith(@NonNull FlutterEngine flutterEngine) {
ShimPluginRegistry shimPluginRegistry = new ShimPluginRegistry(flutterEngine);
com.flutter_webview_plugin.FlutterWebviewPlugin.registerWith(shimPluginRegistry.registrarFor("com.flutter_webview_plugin.FlutterWebviewPlugin"));
flutterEngine.getPlugins().add(new io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin());
}
示例11
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
}