Flutter Engine
FlutterDartProject_Internal.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef SHELL_PLATFORM_IOS_FRAMEWORK_SOURCE_FLUTTERDARTPROJECT_INTERNAL_H_
6 #define SHELL_PLATFORM_IOS_FRAMEWORK_SOURCE_FLUTTERDARTPROJECT_INTERNAL_H_
7 
8 #include "flutter/common/settings.h"
9 #include "flutter/runtime/platform_data.h"
10 #include "flutter/shell/common/engine.h"
11 #import "flutter/shell/platform/darwin/ios/framework/Headers/FlutterDartProject.h"
12 
14 
15 flutter::Settings FLTDefaultSettingsForBundle(NSBundle* bundle = nil);
16 
17 @interface FlutterDartProject ()
18 
19 /**
20  * This is currently used for *only for tests* to override settings.
21  */
22 - (instancetype)initWithSettings:(const flutter::Settings&)settings;
23 - (const flutter::Settings&)settings;
24 - (const flutter::PlatformData)defaultPlatformData;
25 
26 - (flutter::RunConfiguration)runConfiguration;
27 - (flutter::RunConfiguration)runConfigurationForEntrypoint:(nullable NSString*)entrypointOrNil;
28 - (flutter::RunConfiguration)runConfigurationForEntrypoint:(nullable NSString*)entrypointOrNil
29  libraryOrNil:(nullable NSString*)dartLibraryOrNil;
30 
31 + (NSString*)flutterAssetsName:(NSBundle*)bundle;
32 + (NSString*)domainNetworkPolicy:(NSDictionary*)appTransportSecurity;
33 + (bool)allowsArbitraryLoads:(NSDictionary*)appTransportSecurity;
34 
35 /**
36  * The embedder can specify data that the isolate can request synchronously on launch. Engines
37  * launched using this configuration can access the persistent isolate data via the
38  * `Window.getPersistentIsolateData` accessor.
39  *
40  * @param data The persistent isolate data. This data is persistent for the duration of the Flutter
41  * application and is available even after isolate restarts. Because of this lifecycle,
42  * the size of this data must be kept to a minimum and platform channels used for
43  * communication that does not require synchronous embedder to isolate communication
44  * close to isolate launch.
45  **/
46 - (void)setPersistentIsolateData:(NSData*)data;
47 
48 @end
49 
51 
52 #endif // SHELL_PLATFORM_IOS_FRAMEWORK_SOURCE_FLUTTERDARTPROJECT_INTERNAL_H_
#define NS_ASSUME_NONNULL_END
Definition: FlutterMacros.h:20
#define NS_ASSUME_NONNULL_BEGIN
Definition: FlutterMacros.h:19
NS_ASSUME_NONNULL_BEGIN flutter::Settings FLTDefaultSettingsForBundle(NSBundle *bundle=nil)