David PHAM-VAN

Fix demo project

Showing 38 changed files with 319 additions and 270 deletions
@@ -5,3 +5,7 @@ gradle-wrapper.jar @@ -5,3 +5,7 @@ gradle-wrapper.jar
5 /gradlew.bat 5 /gradlew.bat
6 /local.properties 6 /local.properties
7 GeneratedPluginRegistrant.java 7 GeneratedPluginRegistrant.java
  8 +
  9 +# Remember to never publicly share your keystore.
  10 +# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
  11 +key.properties
@@ -22,23 +22,23 @@ if (flutterVersionName == null) { @@ -22,23 +22,23 @@ if (flutterVersionName == null) {
22 } 22 }
23 23
24 apply plugin: 'com.android.application' 24 apply plugin: 'com.android.application'
  25 +apply plugin: 'kotlin-android'
25 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" 26 apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
26 27
27 android { 28 android {
28 - compileSdkVersion 28 29 + compileSdkVersion 30
29 30
30 - lintOptions {  
31 - disable 'InvalidPackage' 31 + sourceSets {
  32 + main.java.srcDirs += 'src/main/kotlin'
32 } 33 }
33 34
34 defaultConfig { 35 defaultConfig {
35 // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). 36 // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
36 - applicationId "com.example.example"  
37 - minSdkVersion 21  
38 - targetSdkVersion 28 37 + applicationId "net.nfet.printing_demo"
  38 + minSdkVersion 16
  39 + targetSdkVersion 30
39 versionCode flutterVersionCode.toInteger() 40 versionCode flutterVersionCode.toInteger()
40 versionName flutterVersionName 41 versionName flutterVersionName
41 - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"  
42 } 42 }
43 43
44 buildTypes { 44 buildTypes {
@@ -55,7 +55,5 @@ flutter { @@ -55,7 +55,5 @@ flutter {
55 } 55 }
56 56
57 dependencies { 57 dependencies {
58 - testImplementation 'junit:junit:4.12'  
59 - androidTestImplementation 'androidx.test:runner:1.1.1'  
60 - androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1' 58 + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
61 } 59 }
1 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 1 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
2 - package="com.example.example"> 2 + package="net.nfet.printing_demo">
3 <!-- Flutter needs it to communicate with the running application 3 <!-- Flutter needs it to communicate with the running application
4 to allow setting breakpoints, to provide hot reload, etc. 4 to allow setting breakpoints, to provide hot reload, etc.
5 --> 5 -->
1 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 1 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
2 - package="com.example.example">  
3 - <!-- io.flutter.app.FlutterApplication is an android.app.Application that  
4 - calls FlutterMain.startInitialization(this); in its onCreate method.  
5 - In most cases you can leave this as-is, but you if you want to provide  
6 - additional functionality it is fine to subclass or reimplement  
7 - FlutterApplication and put your custom class here. -->  
8 - <application  
9 - android:name="io.flutter.app.FlutterApplication"  
10 - android:label="example" 2 + package="net.nfet.printing_demo">
  3 + <application
  4 + android:label="printing_demo"
11 android:icon="@mipmap/ic_launcher"> 5 android:icon="@mipmap/ic_launcher">
12 <activity 6 <activity
13 android:name=".MainActivity" 7 android:name=".MainActivity"
@@ -16,6 +10,23 @@ @@ -16,6 +10,23 @@
16 android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" 10 android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
17 android:hardwareAccelerated="true" 11 android:hardwareAccelerated="true"
18 android:windowSoftInputMode="adjustResize"> 12 android:windowSoftInputMode="adjustResize">
  13 + <!-- Specifies an Android theme to apply to this Activity as soon as
  14 + the Android process has started. This theme is visible to the user
  15 + while the Flutter UI initializes. After that, this theme continues
  16 + to determine the Window background behind the Flutter UI. -->
  17 + <meta-data
  18 + android:name="io.flutter.embedding.android.NormalTheme"
  19 + android:resource="@style/NormalTheme"
  20 + />
  21 + <!-- Displays an Android View that continues showing the launch screen
  22 + Drawable until Flutter paints its first frame, then this splash
  23 + screen fades out. A splash screen is useful to avoid any visual
  24 + gap between the end of Android's launch screen and the painting of
  25 + Flutter's first frame. -->
  26 + <meta-data
  27 + android:name="io.flutter.embedding.android.SplashScreenDrawable"
  28 + android:resource="@drawable/launch_background"
  29 + />
19 <intent-filter> 30 <intent-filter>
20 <action android:name="android.intent.action.MAIN"/> 31 <action android:name="android.intent.action.MAIN"/>
21 <category android:name="android.intent.category.LAUNCHER"/> 32 <category android:name="android.intent.category.LAUNCHER"/>
1 -package com.example.example;  
2 -  
3 -import androidx.annotation.NonNull;  
4 -import io.flutter.embedding.android.FlutterActivity;  
5 -import io.flutter.embedding.engine.FlutterEngine;  
6 -import io.flutter.plugins.GeneratedPluginRegistrant;  
7 -  
8 -public class MainActivity extends FlutterActivity {  
9 - @Override  
10 - public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {  
11 - GeneratedPluginRegistrant.registerWith(flutterEngine);  
12 - }  
13 -}  
  1 +package net.nfet.printing_demo
  2 +
  3 +import io.flutter.embedding.android.FlutterActivity
  4 +
  5 +class MainActivity: FlutterActivity() {
  6 +}
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<!-- Modify this file to customize your launch splash screen -->
  3 +<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  4 + <item android:drawable="?android:colorBackground" />
  5 +
  6 + <!-- You can insert your own image assets here -->
  7 + <!-- <item>
  8 + <bitmap
  9 + android:gravity="center"
  10 + android:src="@mipmap/launch_image" />
  11 + </item> -->
  12 +</layer-list>
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<resources>
  3 + <!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on -->
  4 + <style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
  5 + <!-- Show a splash screen on the activity. Automatically removed when
  6 + Flutter draws its first frame -->
  7 + <item name="android:windowBackground">@drawable/launch_background</item>
  8 + </style>
  9 + <!-- Theme applied to the Android Window as soon as the process has started.
  10 + This theme determines the color of the Android Window while your
  11 + Flutter UI initializes, as well as behind your Flutter UI while its
  12 + running.
  13 +
  14 + This Theme is only used starting with V2 of Flutter's Android embedding. -->
  15 + <style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
  16 + <item name="android:windowBackground">?android:colorBackground</item>
  17 + </style>
  18 +</resources>
1 <?xml version="1.0" encoding="utf-8"?> 1 <?xml version="1.0" encoding="utf-8"?>
2 <resources> 2 <resources>
3 - <style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar"> 3 + <!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
  4 + <style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
4 <!-- Show a splash screen on the activity. Automatically removed when 5 <!-- Show a splash screen on the activity. Automatically removed when
5 Flutter draws its first frame --> 6 Flutter draws its first frame -->
6 <item name="android:windowBackground">@drawable/launch_background</item> 7 <item name="android:windowBackground">@drawable/launch_background</item>
7 </style> 8 </style>
  9 + <!-- Theme applied to the Android Window as soon as the process has started.
  10 + This theme determines the color of the Android Window while your
  11 + Flutter UI initializes, as well as behind your Flutter UI while its
  12 + running.
  13 +
  14 + This Theme is only used starting with V2 of Flutter's Android embedding. -->
  15 + <style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
  16 + <item name="android:windowBackground">?android:colorBackground</item>
  17 + </style>
8 </resources> 18 </resources>
1 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 1 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
2 - package="com.example.example"> 2 + package="net.nfet.printing_demo">
3 <!-- Flutter needs it to communicate with the running application 3 <!-- Flutter needs it to communicate with the running application
4 to allow setting breakpoints, to provide hot reload, etc. 4 to allow setting breakpoints, to provide hot reload, etc.
5 --> 5 -->
1 buildscript { 1 buildscript {
  2 + ext.kotlin_version = '1.3.50'
2 repositories { 3 repositories {
3 google() 4 google()
4 jcenter() 5 jcenter()
5 } 6 }
6 7
7 dependencies { 8 dependencies {
8 - classpath 'com.android.tools.build:gradle:3.5.0' 9 + classpath 'com.android.tools.build:gradle:4.1.0'
  10 + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
9 } 11 }
10 } 12 }
11 13
1 org.gradle.jvmargs=-Xmx1536M 1 org.gradle.jvmargs=-Xmx1536M
2 -android.enableR8=true  
3 android.useAndroidX=true 2 android.useAndroidX=true
4 android.enableJetifier=true 3 android.enableJetifier=true
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
3 distributionPath=wrapper/dists 3 distributionPath=wrapper/dists
4 zipStoreBase=GRADLE_USER_HOME 4 zipStoreBase=GRADLE_USER_HOME
5 zipStorePath=wrapper/dists 5 zipStorePath=wrapper/dists
6 -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip 6 +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
1 include ':app' 1 include ':app'
2 2
3 -def flutterProjectRoot = rootProject.projectDir.parentFile.toPath() 3 +def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
  4 +def properties = new Properties()
4 5
5 -def plugins = new Properties()  
6 -def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')  
7 -if (pluginsFile.exists()) {  
8 - pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }  
9 -} 6 +assert localPropertiesFile.exists()
  7 +localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
10 8
11 -plugins.each { name, path ->  
12 - def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()  
13 - include ":$name"  
14 - project(":$name").projectDir = pluginDirectory  
15 -} 9 +def flutterSdkPath = properties.getProperty("flutter.sdk")
  10 +assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
  11 +apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
@@ -30,3 +30,5 @@ Runner/GeneratedPluginRegistrant.* @@ -30,3 +30,5 @@ Runner/GeneratedPluginRegistrant.*
30 !default.mode2v3 30 !default.mode2v3
31 !default.pbxuser 31 !default.pbxuser
32 !default.perspectivev3 32 !default.perspectivev3
  33 +
  34 +Podfile.lock
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 <plist version="1.0"> 3 <plist version="1.0">
4 <dict> 4 <dict>
5 <key>CFBundleDevelopmentRegion</key> 5 <key>CFBundleDevelopmentRegion</key>
6 - <string>$(DEVELOPMENT_LANGUAGE)</string> 6 + <string>en</string>
7 <key>CFBundleExecutable</key> 7 <key>CFBundleExecutable</key>
8 <string>App</string> 8 <string>App</string>
9 <key>CFBundleIdentifier</key> 9 <key>CFBundleIdentifier</key>
@@ -10,81 +10,32 @@ project 'Runner', { @@ -10,81 +10,32 @@ project 'Runner', {
10 'Release' => :release, 10 'Release' => :release,
11 } 11 }
12 12
13 -def parse_KV_file(file, separator='=')  
14 - file_abs_path = File.expand_path(file)  
15 - if !File.exists? file_abs_path  
16 - return []; 13 +def flutter_root
  14 + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)
  15 + unless File.exist?(generated_xcode_build_settings_path)
  16 + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
17 end 17 end
18 - generated_key_values = {}  
19 - skip_line_start_symbols = ["#", "/"]  
20 - File.foreach(file_abs_path) do |line|  
21 - next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }  
22 - plugin = line.split(pattern=separator)  
23 - if plugin.length == 2  
24 - podname = plugin[0].strip()  
25 - path = plugin[1].strip()  
26 - podpath = File.expand_path("#{path}", file_abs_path)  
27 - generated_key_values[podname] = podpath  
28 - else  
29 - puts "Invalid plugin specification: #{line}"  
30 - end 18 +
  19 + File.foreach(generated_xcode_build_settings_path) do |line|
  20 + matches = line.match(/FLUTTER_ROOT\=(.*)/)
  21 + return matches[1].strip if matches
31 end 22 end
32 - generated_key_values 23 + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
33 end 24 end
34 25
  26 +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)
  27 +
  28 +flutter_ios_podfile_setup
  29 +
35 target 'Runner' do 30 target 'Runner' do
36 use_frameworks! 31 use_frameworks!
37 use_modular_headers! 32 use_modular_headers!
38 33
39 - # Flutter Pod  
40 -  
41 - copied_flutter_dir = File.join(__dir__, 'Flutter')  
42 - copied_framework_path = File.join(copied_flutter_dir, 'Flutter.framework')  
43 - copied_podspec_path = File.join(copied_flutter_dir, 'Flutter.podspec')  
44 - unless File.exist?(copied_framework_path) && File.exist?(copied_podspec_path)  
45 - # Copy Flutter.framework and Flutter.podspec to Flutter/ to have something to link against if the xcode backend script has not run yet.  
46 - # That script will copy the correct debug/profile/release version of the framework based on the currently selected Xcode configuration.  
47 - # CocoaPods will not embed the framework on pod install (before any build phases can generate) if the dylib does not exist.  
48 -  
49 - generated_xcode_build_settings_path = File.join(copied_flutter_dir, 'Generated.xcconfig')  
50 - unless File.exist?(generated_xcode_build_settings_path)  
51 - raise "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first"  
52 - end  
53 - generated_xcode_build_settings = parse_KV_file(generated_xcode_build_settings_path)  
54 - cached_framework_dir = generated_xcode_build_settings['FLUTTER_FRAMEWORK_DIR'];  
55 -  
56 - unless File.exist?(copied_framework_path)  
57 - FileUtils.cp_r(File.join(cached_framework_dir, 'Flutter.framework'), copied_flutter_dir)  
58 - end  
59 - unless File.exist?(copied_podspec_path)  
60 - FileUtils.cp(File.join(cached_framework_dir, 'Flutter.podspec'), copied_flutter_dir)  
61 - end  
62 - end  
63 -  
64 - # Keep pod path relative so it can be checked into Podfile.lock.  
65 - pod 'Flutter', :path => 'Flutter'  
66 -  
67 - # Plugin Pods  
68 -  
69 - # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock  
70 - # referring to absolute paths on developers' machines.  
71 - system('rm -rf .symlinks')  
72 - system('mkdir -p .symlinks/plugins')  
73 - plugin_pods = parse_KV_file('../.flutter-plugins')  
74 - plugin_pods.each do |name, path|  
75 - symlink = File.join('.symlinks', 'plugins', name)  
76 - File.symlink(path, symlink)  
77 - pod name, :path => File.join(symlink, 'ios')  
78 - end 34 + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
79 end 35 end
80 36
81 -# Prevent Cocoapods from embedding a second Flutter framework and causing an error with the new Xcode build system.  
82 -install! 'cocoapods', :disable_input_output_paths => true  
83 -  
84 post_install do |installer| 37 post_install do |installer|
85 installer.pods_project.targets.each do |target| 38 installer.pods_project.targets.each do |target|
86 - target.build_configurations.each do |config|  
87 - config.build_settings['ENABLE_BITCODE'] = 'NO'  
88 - end 39 + flutter_additional_ios_build_settings(target)
89 end 40 end
90 end 41 end
@@ -9,11 +9,8 @@ @@ -9,11 +9,8 @@
9 /* Begin PBXBuildFile section */ 9 /* Begin PBXBuildFile section */
10 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; 10 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
11 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 11 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
12 - 3B80C3941E831B6300D905FE /* App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; };  
13 - 3B80C3951E831B6300D905FE /* App.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 12 + 54041616FF56C1C2938DCC0B /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B649BF314565B7A4BC98B168 /* Pods_Runner.framework */; };
14 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 13 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
15 - 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; };  
16 - 9705A1C71CF904A300538489 /* Flutter.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };  
17 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 14 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
18 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 15 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
19 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; 16 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
@@ -26,8 +23,6 @@ @@ -26,8 +23,6 @@
26 dstPath = ""; 23 dstPath = "";
27 dstSubfolderSpec = 10; 24 dstSubfolderSpec = 10;
28 files = ( 25 files = (
29 - 3B80C3951E831B6300D905FE /* App.framework in Embed Frameworks */,  
30 - 9705A1C71CF904A300538489 /* Flutter.framework in Embed Frameworks */,  
31 ); 26 );
32 name = "Embed Frameworks"; 27 name = "Embed Frameworks";
33 runOnlyForDeploymentPostprocessing = 0; 28 runOnlyForDeploymentPostprocessing = 0;
@@ -38,18 +33,20 @@ @@ -38,18 +33,20 @@
38 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; }; 33 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
39 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; }; 34 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
40 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; 35 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
41 - 3B80C3931E831B6300D905FE /* App.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = App.framework; path = Flutter/App.framework; sourceTree = "<group>"; }; 36 + 4AC5914B4F011A1A678B8063 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
42 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; 37 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
43 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; 38 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
44 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; 39 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
45 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; 40 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; };
46 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; 41 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
47 - 9740EEBA1CF902C7004384FC /* Flutter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Flutter.framework; path = Flutter/Flutter.framework; sourceTree = "<group>"; };  
48 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; 42 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
49 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; 43 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
50 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; 44 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
51 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; 45 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
52 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; 46 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
  47 + 9F463DE4D92BD02EFE020E7F /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; };
  48 + B07B8E900764710FEB6A5F77 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
  49 + B649BF314565B7A4BC98B168 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
53 /* End PBXFileReference section */ 50 /* End PBXFileReference section */
54 51
55 /* Begin PBXFrameworksBuildPhase section */ 52 /* Begin PBXFrameworksBuildPhase section */
@@ -57,20 +54,28 @@ @@ -57,20 +54,28 @@
57 isa = PBXFrameworksBuildPhase; 54 isa = PBXFrameworksBuildPhase;
58 buildActionMask = 2147483647; 55 buildActionMask = 2147483647;
59 files = ( 56 files = (
60 - 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */,  
61 - 3B80C3941E831B6300D905FE /* App.framework in Frameworks */, 57 + 54041616FF56C1C2938DCC0B /* Pods_Runner.framework in Frameworks */,
62 ); 58 );
63 runOnlyForDeploymentPostprocessing = 0; 59 runOnlyForDeploymentPostprocessing = 0;
64 }; 60 };
65 /* End PBXFrameworksBuildPhase section */ 61 /* End PBXFrameworksBuildPhase section */
66 62
67 /* Begin PBXGroup section */ 63 /* Begin PBXGroup section */
  64 + 425553110560F7A9BCF22DF3 /* Pods */ = {
  65 + isa = PBXGroup;
  66 + children = (
  67 + 4AC5914B4F011A1A678B8063 /* Pods-Runner.debug.xcconfig */,
  68 + 9F463DE4D92BD02EFE020E7F /* Pods-Runner.release.xcconfig */,
  69 + B07B8E900764710FEB6A5F77 /* Pods-Runner.profile.xcconfig */,
  70 + );
  71 + name = Pods;
  72 + path = Pods;
  73 + sourceTree = "<group>";
  74 + };
68 9740EEB11CF90186004384FC /* Flutter */ = { 75 9740EEB11CF90186004384FC /* Flutter */ = {
69 isa = PBXGroup; 76 isa = PBXGroup;
70 children = ( 77 children = (
71 - 3B80C3931E831B6300D905FE /* App.framework */,  
72 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, 78 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */,
73 - 9740EEBA1CF902C7004384FC /* Flutter.framework */,  
74 9740EEB21CF90195004384FC /* Debug.xcconfig */, 79 9740EEB21CF90195004384FC /* Debug.xcconfig */,
75 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, 80 7AFA3C8E1D35360C0083082E /* Release.xcconfig */,
76 9740EEB31CF90195004384FC /* Generated.xcconfig */, 81 9740EEB31CF90195004384FC /* Generated.xcconfig */,
@@ -84,6 +89,8 @@ @@ -84,6 +89,8 @@
84 9740EEB11CF90186004384FC /* Flutter */, 89 9740EEB11CF90186004384FC /* Flutter */,
85 97C146F01CF9000F007C117D /* Runner */, 90 97C146F01CF9000F007C117D /* Runner */,
86 97C146EF1CF9000F007C117D /* Products */, 91 97C146EF1CF9000F007C117D /* Products */,
  92 + 425553110560F7A9BCF22DF3 /* Pods */,
  93 + FDE4CFBBC76DEA5CE219DBFB /* Frameworks */,
87 ); 94 );
88 sourceTree = "<group>"; 95 sourceTree = "<group>";
89 }; 96 };
@@ -102,7 +109,6 @@ @@ -102,7 +109,6 @@
102 97C146FD1CF9000F007C117D /* Assets.xcassets */, 109 97C146FD1CF9000F007C117D /* Assets.xcassets */,
103 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, 110 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */,
104 97C147021CF9000F007C117D /* Info.plist */, 111 97C147021CF9000F007C117D /* Info.plist */,
105 - 97C146F11CF9000F007C117D /* Supporting Files */,  
106 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, 112 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */,
107 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, 113 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */,
108 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, 114 74858FAE1ED2DC5600515810 /* AppDelegate.swift */,
@@ -111,11 +117,12 @@ @@ -111,11 +117,12 @@
111 path = Runner; 117 path = Runner;
112 sourceTree = "<group>"; 118 sourceTree = "<group>";
113 }; 119 };
114 - 97C146F11CF9000F007C117D /* Supporting Files */ = { 120 + FDE4CFBBC76DEA5CE219DBFB /* Frameworks */ = {
115 isa = PBXGroup; 121 isa = PBXGroup;
116 children = ( 122 children = (
  123 + B649BF314565B7A4BC98B168 /* Pods_Runner.framework */,
117 ); 124 );
118 - name = "Supporting Files"; 125 + name = Frameworks;
119 sourceTree = "<group>"; 126 sourceTree = "<group>";
120 }; 127 };
121 /* End PBXGroup section */ 128 /* End PBXGroup section */
@@ -125,12 +132,14 @@ @@ -125,12 +132,14 @@
125 isa = PBXNativeTarget; 132 isa = PBXNativeTarget;
126 buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; 133 buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
127 buildPhases = ( 134 buildPhases = (
  135 + CD6EAF941BD812B0ACE8E6DD /* [CP] Check Pods Manifest.lock */,
128 9740EEB61CF901F6004384FC /* Run Script */, 136 9740EEB61CF901F6004384FC /* Run Script */,
129 97C146EA1CF9000F007C117D /* Sources */, 137 97C146EA1CF9000F007C117D /* Sources */,
130 97C146EB1CF9000F007C117D /* Frameworks */, 138 97C146EB1CF9000F007C117D /* Frameworks */,
131 97C146EC1CF9000F007C117D /* Resources */, 139 97C146EC1CF9000F007C117D /* Resources */,
132 9705A1C41CF9048500538489 /* Embed Frameworks */, 140 9705A1C41CF9048500538489 /* Embed Frameworks */,
133 3B06AD1E1E4923F5004D2608 /* Thin Binary */, 141 3B06AD1E1E4923F5004D2608 /* Thin Binary */,
  142 + 6766C503D8DE859AA07A0125 /* [CP] Embed Pods Frameworks */,
134 ); 143 );
135 buildRules = ( 144 buildRules = (
136 ); 145 );
@@ -157,7 +166,7 @@ @@ -157,7 +166,7 @@
157 }; 166 };
158 }; 167 };
159 buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; 168 buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */;
160 - compatibilityVersion = "Xcode 3.2"; 169 + compatibilityVersion = "Xcode 9.3";
161 developmentRegion = en; 170 developmentRegion = en;
162 hasScannedForEncodings = 0; 171 hasScannedForEncodings = 0;
163 knownRegions = ( 172 knownRegions = (
@@ -201,7 +210,24 @@ @@ -201,7 +210,24 @@
201 ); 210 );
202 runOnlyForDeploymentPostprocessing = 0; 211 runOnlyForDeploymentPostprocessing = 0;
203 shellPath = /bin/sh; 212 shellPath = /bin/sh;
204 - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" thin"; 213 + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
  214 + };
  215 + 6766C503D8DE859AA07A0125 /* [CP] Embed Pods Frameworks */ = {
  216 + isa = PBXShellScriptBuildPhase;
  217 + buildActionMask = 2147483647;
  218 + files = (
  219 + );
  220 + inputFileListPaths = (
  221 + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
  222 + );
  223 + name = "[CP] Embed Pods Frameworks";
  224 + outputFileListPaths = (
  225 + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
  226 + );
  227 + runOnlyForDeploymentPostprocessing = 0;
  228 + shellPath = /bin/sh;
  229 + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
  230 + showEnvVarsInLog = 0;
205 }; 231 };
206 9740EEB61CF901F6004384FC /* Run Script */ = { 232 9740EEB61CF901F6004384FC /* Run Script */ = {
207 isa = PBXShellScriptBuildPhase; 233 isa = PBXShellScriptBuildPhase;
@@ -217,6 +243,28 @@ @@ -217,6 +243,28 @@
217 shellPath = /bin/sh; 243 shellPath = /bin/sh;
218 shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; 244 shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
219 }; 245 };
  246 + CD6EAF941BD812B0ACE8E6DD /* [CP] Check Pods Manifest.lock */ = {
  247 + isa = PBXShellScriptBuildPhase;
  248 + buildActionMask = 2147483647;
  249 + files = (
  250 + );
  251 + inputFileListPaths = (
  252 + );
  253 + inputPaths = (
  254 + "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
  255 + "${PODS_ROOT}/Manifest.lock",
  256 + );
  257 + name = "[CP] Check Pods Manifest.lock";
  258 + outputFileListPaths = (
  259 + );
  260 + outputPaths = (
  261 + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt",
  262 + );
  263 + runOnlyForDeploymentPostprocessing = 0;
  264 + shellPath = /bin/sh;
  265 + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
  266 + showEnvVarsInLog = 0;
  267 + };
220 /* End PBXShellScriptBuildPhase section */ 268 /* End PBXShellScriptBuildPhase section */
221 269
222 /* Begin PBXSourcesBuildPhase section */ 270 /* Begin PBXSourcesBuildPhase section */
@@ -253,7 +301,6 @@ @@ -253,7 +301,6 @@
253 /* Begin XCBuildConfiguration section */ 301 /* Begin XCBuildConfiguration section */
254 249021D3217E4FDB00AE95B9 /* Profile */ = { 302 249021D3217E4FDB00AE95B9 /* Profile */ = {
255 isa = XCBuildConfiguration; 303 isa = XCBuildConfiguration;
256 - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;  
257 buildSettings = { 304 buildSettings = {
258 ALWAYS_SEARCH_USER_PATHS = NO; 305 ALWAYS_SEARCH_USER_PATHS = NO;
259 CLANG_ANALYZER_NONNULL = YES; 306 CLANG_ANALYZER_NONNULL = YES;
@@ -293,7 +340,7 @@ @@ -293,7 +340,7 @@
293 GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 340 GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
294 GCC_WARN_UNUSED_FUNCTION = YES; 341 GCC_WARN_UNUSED_FUNCTION = YES;
295 GCC_WARN_UNUSED_VARIABLE = YES; 342 GCC_WARN_UNUSED_VARIABLE = YES;
296 - IPHONEOS_DEPLOYMENT_TARGET = 8.0; 343 + IPHONEOS_DEPLOYMENT_TARGET = 9.0;
297 MTL_ENABLE_DEBUG_INFO = NO; 344 MTL_ENABLE_DEBUG_INFO = NO;
298 SDKROOT = iphoneos; 345 SDKROOT = iphoneos;
299 SUPPORTED_PLATFORMS = iphoneos; 346 SUPPORTED_PLATFORMS = iphoneos;
@@ -310,17 +357,9 @@ @@ -310,17 +357,9 @@
310 CLANG_ENABLE_MODULES = YES; 357 CLANG_ENABLE_MODULES = YES;
311 CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; 358 CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
312 ENABLE_BITCODE = NO; 359 ENABLE_BITCODE = NO;
313 - FRAMEWORK_SEARCH_PATHS = (  
314 - "$(inherited)",  
315 - "$(PROJECT_DIR)/Flutter",  
316 - );  
317 INFOPLIST_FILE = Runner/Info.plist; 360 INFOPLIST_FILE = Runner/Info.plist;
318 LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 361 LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
319 - LIBRARY_SEARCH_PATHS = (  
320 - "$(inherited)",  
321 - "$(PROJECT_DIR)/Flutter",  
322 - );  
323 - PRODUCT_BUNDLE_IDENTIFIER = com.example.example; 362 + PRODUCT_BUNDLE_IDENTIFIER = net.nfet.printingDemo;
324 PRODUCT_NAME = "$(TARGET_NAME)"; 363 PRODUCT_NAME = "$(TARGET_NAME)";
325 SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; 364 SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
326 SWIFT_VERSION = 5.0; 365 SWIFT_VERSION = 5.0;
@@ -330,7 +369,6 @@ @@ -330,7 +369,6 @@
330 }; 369 };
331 97C147031CF9000F007C117D /* Debug */ = { 370 97C147031CF9000F007C117D /* Debug */ = {
332 isa = XCBuildConfiguration; 371 isa = XCBuildConfiguration;
333 - baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */;  
334 buildSettings = { 372 buildSettings = {
335 ALWAYS_SEARCH_USER_PATHS = NO; 373 ALWAYS_SEARCH_USER_PATHS = NO;
336 CLANG_ANALYZER_NONNULL = YES; 374 CLANG_ANALYZER_NONNULL = YES;
@@ -376,7 +414,7 @@ @@ -376,7 +414,7 @@
376 GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 414 GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
377 GCC_WARN_UNUSED_FUNCTION = YES; 415 GCC_WARN_UNUSED_FUNCTION = YES;
378 GCC_WARN_UNUSED_VARIABLE = YES; 416 GCC_WARN_UNUSED_VARIABLE = YES;
379 - IPHONEOS_DEPLOYMENT_TARGET = 8.0; 417 + IPHONEOS_DEPLOYMENT_TARGET = 9.0;
380 MTL_ENABLE_DEBUG_INFO = YES; 418 MTL_ENABLE_DEBUG_INFO = YES;
381 ONLY_ACTIVE_ARCH = YES; 419 ONLY_ACTIVE_ARCH = YES;
382 SDKROOT = iphoneos; 420 SDKROOT = iphoneos;
@@ -386,7 +424,6 @@ @@ -386,7 +424,6 @@
386 }; 424 };
387 97C147041CF9000F007C117D /* Release */ = { 425 97C147041CF9000F007C117D /* Release */ = {
388 isa = XCBuildConfiguration; 426 isa = XCBuildConfiguration;
389 - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;  
390 buildSettings = { 427 buildSettings = {
391 ALWAYS_SEARCH_USER_PATHS = NO; 428 ALWAYS_SEARCH_USER_PATHS = NO;
392 CLANG_ANALYZER_NONNULL = YES; 429 CLANG_ANALYZER_NONNULL = YES;
@@ -426,7 +463,7 @@ @@ -426,7 +463,7 @@
426 GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 463 GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
427 GCC_WARN_UNUSED_FUNCTION = YES; 464 GCC_WARN_UNUSED_FUNCTION = YES;
428 GCC_WARN_UNUSED_VARIABLE = YES; 465 GCC_WARN_UNUSED_VARIABLE = YES;
429 - IPHONEOS_DEPLOYMENT_TARGET = 8.0; 466 + IPHONEOS_DEPLOYMENT_TARGET = 9.0;
430 MTL_ENABLE_DEBUG_INFO = NO; 467 MTL_ENABLE_DEBUG_INFO = NO;
431 SDKROOT = iphoneos; 468 SDKROOT = iphoneos;
432 SUPPORTED_PLATFORMS = iphoneos; 469 SUPPORTED_PLATFORMS = iphoneos;
@@ -444,17 +481,9 @@ @@ -444,17 +481,9 @@
444 CLANG_ENABLE_MODULES = YES; 481 CLANG_ENABLE_MODULES = YES;
445 CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; 482 CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
446 ENABLE_BITCODE = NO; 483 ENABLE_BITCODE = NO;
447 - FRAMEWORK_SEARCH_PATHS = (  
448 - "$(inherited)",  
449 - "$(PROJECT_DIR)/Flutter",  
450 - );  
451 INFOPLIST_FILE = Runner/Info.plist; 484 INFOPLIST_FILE = Runner/Info.plist;
452 LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 485 LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
453 - LIBRARY_SEARCH_PATHS = (  
454 - "$(inherited)",  
455 - "$(PROJECT_DIR)/Flutter",  
456 - );  
457 - PRODUCT_BUNDLE_IDENTIFIER = com.example.example; 486 + PRODUCT_BUNDLE_IDENTIFIER = net.nfet.printingDemo;
458 PRODUCT_NAME = "$(TARGET_NAME)"; 487 PRODUCT_NAME = "$(TARGET_NAME)";
459 SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; 488 SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
460 SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 489 SWIFT_OPTIMIZATION_LEVEL = "-Onone";
@@ -471,17 +500,9 @@ @@ -471,17 +500,9 @@
471 CLANG_ENABLE_MODULES = YES; 500 CLANG_ENABLE_MODULES = YES;
472 CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; 501 CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
473 ENABLE_BITCODE = NO; 502 ENABLE_BITCODE = NO;
474 - FRAMEWORK_SEARCH_PATHS = (  
475 - "$(inherited)",  
476 - "$(PROJECT_DIR)/Flutter",  
477 - );  
478 INFOPLIST_FILE = Runner/Info.plist; 503 INFOPLIST_FILE = Runner/Info.plist;
479 LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 504 LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
480 - LIBRARY_SEARCH_PATHS = (  
481 - "$(inherited)",  
482 - "$(PROJECT_DIR)/Flutter",  
483 - );  
484 - PRODUCT_BUNDLE_IDENTIFIER = com.example.example; 505 + PRODUCT_BUNDLE_IDENTIFIER = net.nfet.printingDemo;
485 PRODUCT_NAME = "$(TARGET_NAME)"; 506 PRODUCT_NAME = "$(TARGET_NAME)";
486 SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; 507 SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
487 SWIFT_VERSION = 5.0; 508 SWIFT_VERSION = 5.0;
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3 +<plist version="1.0">
  4 +<dict>
  5 + <key>IDEDidComputeMac32BitWarning</key>
  6 + <true/>
  7 +</dict>
  8 +</plist>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3 +<plist version="1.0">
  4 +<dict>
  5 + <key>PreviewsEnabled</key>
  6 + <false/>
  7 +</dict>
  8 +</plist>
@@ -4,4 +4,7 @@ @@ -4,4 +4,7 @@
4 <FileRef 4 <FileRef
5 location = "group:Runner.xcodeproj"> 5 location = "group:Runner.xcodeproj">
6 </FileRef> 6 </FileRef>
  7 + <FileRef
  8 + location = "group:Pods/Pods.xcodeproj">
  9 + </FileRef>
7 </Workspace> 10 </Workspace>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3 +<plist version="1.0">
  4 +<dict>
  5 + <key>IDEDidComputeMac32BitWarning</key>
  6 + <true/>
  7 +</dict>
  8 +</plist>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3 +<plist version="1.0">
  4 +<dict>
  5 + <key>PreviewsEnabled</key>
  6 + <false/>
  7 +</dict>
  8 +</plist>
1 -import Flutter  
2 import UIKit 1 import UIKit
  2 +import Flutter
3 3
4 @UIApplicationMain 4 @UIApplicationMain
5 @objc class AppDelegate: FlutterAppDelegate { 5 @objc class AppDelegate: FlutterAppDelegate {
6 - override func application(  
7 - _ application: UIApplication,  
8 - didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?  
9 - ) -> Bool {  
10 - GeneratedPluginRegistrant.register(with: self)  
11 - return super.application(application, didFinishLaunchingWithOptions: launchOptions)  
12 - } 6 + override func application(
  7 + _ application: UIApplication,
  8 + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
  9 + ) -> Bool {
  10 + GeneratedPluginRegistrant.register(with: self)
  11 + return super.application(application, didFinishLaunchingWithOptions: launchOptions)
  12 + }
13 } 13 }
@@ -11,7 +11,7 @@ @@ -11,7 +11,7 @@
11 <key>CFBundleInfoDictionaryVersion</key> 11 <key>CFBundleInfoDictionaryVersion</key>
12 <string>6.0</string> 12 <string>6.0</string>
13 <key>CFBundleName</key> 13 <key>CFBundleName</key>
14 - <string>example</string> 14 + <string>printing_demo</string>
15 <key>CFBundlePackageType</key> 15 <key>CFBundlePackageType</key>
16 <string>APPL</string> 16 <string>APPL</string>
17 <key>CFBundleShortVersionString</key> 17 <key>CFBundleShortVersionString</key>
@@ -105,6 +105,7 @@ class MyAppState extends State<MyApp> with SingleTickerProviderStateMixin { @@ -105,6 +105,7 @@ class MyAppState extends State<MyApp> with SingleTickerProviderStateMixin {
105 void _showPrintedToast(BuildContext context) { 105 void _showPrintedToast(BuildContext context) {
106 final scaffold = Scaffold.of(context); 106 final scaffold = Scaffold.of(context);
107 107
  108 + // ignore: deprecated_member_use
108 scaffold.showSnackBar( 109 scaffold.showSnackBar(
109 const SnackBar( 110 const SnackBar(
110 content: Text('Document printed successfully'), 111 content: Text('Document printed successfully'),
@@ -115,6 +116,7 @@ class MyAppState extends State<MyApp> with SingleTickerProviderStateMixin { @@ -115,6 +116,7 @@ class MyAppState extends State<MyApp> with SingleTickerProviderStateMixin {
115 void _showSharedToast(BuildContext context) { 116 void _showSharedToast(BuildContext context) {
116 final scaffold = Scaffold.of(context); 117 final scaffold = Scaffold.of(context);
117 118
  119 + // ignore: deprecated_member_use
118 scaffold.showSnackBar( 120 scaffold.showSnackBar(
119 const SnackBar( 121 const SnackBar(
120 content: Text('Document shared successfully'), 122 content: Text('Document shared successfully'),
@@ -28,7 +28,7 @@ @@ -28,7 +28,7 @@
28 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; 28 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; };
29 33D1A10422148B71006C7A3E /* FlutterMacOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 33D1A10322148B71006C7A3E /* FlutterMacOS.framework */; }; 29 33D1A10422148B71006C7A3E /* FlutterMacOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 33D1A10322148B71006C7A3E /* FlutterMacOS.framework */; };
30 33D1A10522148B93006C7A3E /* FlutterMacOS.framework in Bundle Framework */ = {isa = PBXBuildFile; fileRef = 33D1A10322148B71006C7A3E /* FlutterMacOS.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 30 33D1A10522148B93006C7A3E /* FlutterMacOS.framework in Bundle Framework */ = {isa = PBXBuildFile; fileRef = 33D1A10322148B71006C7A3E /* FlutterMacOS.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
31 - C5167F8E3334BB79DCB28275 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4AAEE3AC203DE6402636AB66 /* Pods_Runner.framework */; }; 31 + 431DC00351DB0DC4ABC58D3B /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 965F29CC9777229324768DEB /* Pods_Runner.framework */; };
32 D73912F022F37F9E000D13A0 /* App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D73912EF22F37F9E000D13A0 /* App.framework */; }; 32 D73912F022F37F9E000D13A0 /* App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D73912EF22F37F9E000D13A0 /* App.framework */; };
33 D73912F222F3801D000D13A0 /* App.framework in Bundle Framework */ = {isa = PBXBuildFile; fileRef = D73912EF22F37F9E000D13A0 /* App.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 33 D73912F222F3801D000D13A0 /* App.framework in Bundle Framework */ = {isa = PBXBuildFile; fileRef = D73912EF22F37F9E000D13A0 /* App.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
34 /* End PBXBuildFile section */ 34 /* End PBXBuildFile section */
@@ -61,7 +61,7 @@ @@ -61,7 +61,7 @@
61 /* Begin PBXFileReference section */ 61 /* Begin PBXFileReference section */
62 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; }; 62 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; };
63 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; }; 63 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; };
64 - 33CC10ED2044A3C60003C045 /* example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = example.app; sourceTree = BUILT_PRODUCTS_DIR; }; 64 + 33CC10ED2044A3C60003C045 /* printing_demo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = printing_demo.app; sourceTree = BUILT_PRODUCTS_DIR; };
65 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; 65 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
66 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = "<group>"; }; 66 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = "<group>"; };
67 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; }; 67 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
@@ -74,12 +74,12 @@ @@ -74,12 +74,12 @@
74 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = "<group>"; }; 74 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = "<group>"; };
75 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = "<group>"; }; 75 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = "<group>"; };
76 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = "<group>"; }; 76 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = "<group>"; };
77 - 43ED5ED41657603B2845C03F /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };  
78 - 4AAEE3AC203DE6402636AB66 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };  
79 - 65AA7E24FA1AB2B70A493F17 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; }; 77 + 367A2D34FF5ABCEBA50C2D9F /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; };
80 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; }; 78 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; };
  79 + 965F29CC9777229324768DEB /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
81 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; }; 80 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; };
82 - AFF841D258A6267ADE7CF49D /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; }; 81 + AD2199B14072A81AC81343D7 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
  82 + C23983A634DCC94446D395FD /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
83 D73912EF22F37F9E000D13A0 /* App.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = App.framework; path = Flutter/ephemeral/App.framework; sourceTree = SOURCE_ROOT; }; 83 D73912EF22F37F9E000D13A0 /* App.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = App.framework; path = Flutter/ephemeral/App.framework; sourceTree = SOURCE_ROOT; };
84 /* End PBXFileReference section */ 84 /* End PBXFileReference section */
85 85
@@ -90,24 +90,13 @@ @@ -90,24 +90,13 @@
90 files = ( 90 files = (
91 D73912F022F37F9E000D13A0 /* App.framework in Frameworks */, 91 D73912F022F37F9E000D13A0 /* App.framework in Frameworks */,
92 33D1A10422148B71006C7A3E /* FlutterMacOS.framework in Frameworks */, 92 33D1A10422148B71006C7A3E /* FlutterMacOS.framework in Frameworks */,
93 - C5167F8E3334BB79DCB28275 /* Pods_Runner.framework in Frameworks */, 93 + 431DC00351DB0DC4ABC58D3B /* Pods_Runner.framework in Frameworks */,
94 ); 94 );
95 runOnlyForDeploymentPostprocessing = 0; 95 runOnlyForDeploymentPostprocessing = 0;
96 }; 96 };
97 /* End PBXFrameworksBuildPhase section */ 97 /* End PBXFrameworksBuildPhase section */
98 98
99 /* Begin PBXGroup section */ 99 /* Begin PBXGroup section */
100 - 0D30096D3D852E9C057D6E9C /* Pods */ = {  
101 - isa = PBXGroup;  
102 - children = (  
103 - 65AA7E24FA1AB2B70A493F17 /* Pods-Runner.debug.xcconfig */,  
104 - AFF841D258A6267ADE7CF49D /* Pods-Runner.release.xcconfig */,  
105 - 43ED5ED41657603B2845C03F /* Pods-Runner.profile.xcconfig */,  
106 - );  
107 - name = Pods;  
108 - path = Pods;  
109 - sourceTree = "<group>";  
110 - };  
111 33BA886A226E78AF003329D5 /* Configs */ = { 100 33BA886A226E78AF003329D5 /* Configs */ = {
112 isa = PBXGroup; 101 isa = PBXGroup;
113 children = ( 102 children = (
@@ -126,14 +115,14 @@ @@ -126,14 +115,14 @@
126 33CEB47122A05771004F2AC0 /* Flutter */, 115 33CEB47122A05771004F2AC0 /* Flutter */,
127 33CC10EE2044A3C60003C045 /* Products */, 116 33CC10EE2044A3C60003C045 /* Products */,
128 D73912EC22F37F3D000D13A0 /* Frameworks */, 117 D73912EC22F37F3D000D13A0 /* Frameworks */,
129 - 0D30096D3D852E9C057D6E9C /* Pods */, 118 + EDECF6CA21D3808849201DCA /* Pods */,
130 ); 119 );
131 sourceTree = "<group>"; 120 sourceTree = "<group>";
132 }; 121 };
133 33CC10EE2044A3C60003C045 /* Products */ = { 122 33CC10EE2044A3C60003C045 /* Products */ = {
134 isa = PBXGroup; 123 isa = PBXGroup;
135 children = ( 124 children = (
136 - 33CC10ED2044A3C60003C045 /* example.app */, 125 + 33CC10ED2044A3C60003C045 /* printing_demo.app */,
137 ); 126 );
138 name = Products; 127 name = Products;
139 sourceTree = "<group>"; 128 sourceTree = "<group>";
@@ -178,11 +167,22 @@ @@ -178,11 +167,22 @@
178 D73912EC22F37F3D000D13A0 /* Frameworks */ = { 167 D73912EC22F37F3D000D13A0 /* Frameworks */ = {
179 isa = PBXGroup; 168 isa = PBXGroup;
180 children = ( 169 children = (
181 - 4AAEE3AC203DE6402636AB66 /* Pods_Runner.framework */, 170 + 965F29CC9777229324768DEB /* Pods_Runner.framework */,
182 ); 171 );
183 name = Frameworks; 172 name = Frameworks;
184 sourceTree = "<group>"; 173 sourceTree = "<group>";
185 }; 174 };
  175 + EDECF6CA21D3808849201DCA /* Pods */ = {
  176 + isa = PBXGroup;
  177 + children = (
  178 + AD2199B14072A81AC81343D7 /* Pods-Runner.debug.xcconfig */,
  179 + 367A2D34FF5ABCEBA50C2D9F /* Pods-Runner.release.xcconfig */,
  180 + C23983A634DCC94446D395FD /* Pods-Runner.profile.xcconfig */,
  181 + );
  182 + name = Pods;
  183 + path = Pods;
  184 + sourceTree = "<group>";
  185 + };
186 /* End PBXGroup section */ 186 /* End PBXGroup section */
187 187
188 /* Begin PBXNativeTarget section */ 188 /* Begin PBXNativeTarget section */
@@ -190,13 +190,13 @@ @@ -190,13 +190,13 @@
190 isa = PBXNativeTarget; 190 isa = PBXNativeTarget;
191 buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; 191 buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */;
192 buildPhases = ( 192 buildPhases = (
193 - 7A774E49F208BB56B0F75B23 /* [CP] Check Pods Manifest.lock */, 193 + 89CE2260822865068C68F8D9 /* [CP] Check Pods Manifest.lock */,
194 33CC10E92044A3C60003C045 /* Sources */, 194 33CC10E92044A3C60003C045 /* Sources */,
195 33CC10EA2044A3C60003C045 /* Frameworks */, 195 33CC10EA2044A3C60003C045 /* Frameworks */,
196 33CC10EB2044A3C60003C045 /* Resources */, 196 33CC10EB2044A3C60003C045 /* Resources */,
197 33CC110E2044A8840003C045 /* Bundle Framework */, 197 33CC110E2044A8840003C045 /* Bundle Framework */,
198 3399D490228B24CF009A79C7 /* ShellScript */, 198 3399D490228B24CF009A79C7 /* ShellScript */,
199 - 198EB137690A6B5A377F607D /* [CP] Embed Pods Frameworks */, 199 + C0E12BE65A32419A3B2F1F21 /* [CP] Embed Pods Frameworks */,
200 ); 200 );
201 buildRules = ( 201 buildRules = (
202 ); 202 );
@@ -205,7 +205,7 @@ @@ -205,7 +205,7 @@
205 ); 205 );
206 name = Runner; 206 name = Runner;
207 productName = Runner; 207 productName = Runner;
208 - productReference = 33CC10ED2044A3C60003C045 /* example.app */; 208 + productReference = 33CC10ED2044A3C60003C045 /* printing_demo.app */;
209 productType = "com.apple.product-type.application"; 209 productType = "com.apple.product-type.application";
210 }; 210 };
211 /* End PBXNativeTarget section */ 211 /* End PBXNativeTarget section */
@@ -216,7 +216,7 @@ @@ -216,7 +216,7 @@
216 attributes = { 216 attributes = {
217 LastSwiftUpdateCheck = 0920; 217 LastSwiftUpdateCheck = 0920;
218 LastUpgradeCheck = 0930; 218 LastUpgradeCheck = 0930;
219 - ORGANIZATIONNAME = "The Flutter Authors"; 219 + ORGANIZATIONNAME = "";
220 TargetAttributes = { 220 TargetAttributes = {
221 33CC10EC2044A3C60003C045 = { 221 33CC10EC2044A3C60003C045 = {
222 CreatedOnToolsVersion = 9.2; 222 CreatedOnToolsVersion = 9.2;
@@ -235,7 +235,7 @@ @@ -235,7 +235,7 @@
235 }; 235 };
236 }; 236 };
237 buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; 237 buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */;
238 - compatibilityVersion = "Xcode 8.0"; 238 + compatibilityVersion = "Xcode 9.3";
239 developmentRegion = en; 239 developmentRegion = en;
240 hasScannedForEncodings = 0; 240 hasScannedForEncodings = 0;
241 knownRegions = ( 241 knownRegions = (
@@ -266,21 +266,6 @@ @@ -266,21 +266,6 @@
266 /* End PBXResourcesBuildPhase section */ 266 /* End PBXResourcesBuildPhase section */
267 267
268 /* Begin PBXShellScriptBuildPhase section */ 268 /* Begin PBXShellScriptBuildPhase section */
269 - 198EB137690A6B5A377F607D /* [CP] Embed Pods Frameworks */ = {  
270 - isa = PBXShellScriptBuildPhase;  
271 - buildActionMask = 2147483647;  
272 - files = (  
273 - );  
274 - inputPaths = (  
275 - );  
276 - name = "[CP] Embed Pods Frameworks";  
277 - outputPaths = (  
278 - );  
279 - runOnlyForDeploymentPostprocessing = 0;  
280 - shellPath = /bin/sh;  
281 - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";  
282 - showEnvVarsInLog = 0;  
283 - };  
284 3399D490228B24CF009A79C7 /* ShellScript */ = { 269 3399D490228B24CF009A79C7 /* ShellScript */ = {
285 isa = PBXShellScriptBuildPhase; 270 isa = PBXShellScriptBuildPhase;
286 buildActionMask = 2147483647; 271 buildActionMask = 2147483647;
@@ -316,9 +301,9 @@ @@ -316,9 +301,9 @@
316 ); 301 );
317 runOnlyForDeploymentPostprocessing = 0; 302 runOnlyForDeploymentPostprocessing = 0;
318 shellPath = /bin/sh; 303 shellPath = /bin/sh;
319 - shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh\ntouch Flutter/ephemeral/tripwire\n"; 304 + shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire";
320 }; 305 };
321 - 7A774E49F208BB56B0F75B23 /* [CP] Check Pods Manifest.lock */ = { 306 + 89CE2260822865068C68F8D9 /* [CP] Check Pods Manifest.lock */ = {
322 isa = PBXShellScriptBuildPhase; 307 isa = PBXShellScriptBuildPhase;
323 buildActionMask = 2147483647; 308 buildActionMask = 2147483647;
324 files = ( 309 files = (
@@ -340,6 +325,21 @@ @@ -340,6 +325,21 @@
340 shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; 325 shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
341 showEnvVarsInLog = 0; 326 showEnvVarsInLog = 0;
342 }; 327 };
  328 + C0E12BE65A32419A3B2F1F21 /* [CP] Embed Pods Frameworks */ = {
  329 + isa = PBXShellScriptBuildPhase;
  330 + buildActionMask = 2147483647;
  331 + files = (
  332 + );
  333 + inputFileListPaths = (
  334 + );
  335 + name = "[CP] Embed Pods Frameworks";
  336 + outputFileListPaths = (
  337 + );
  338 + runOnlyForDeploymentPostprocessing = 0;
  339 + shellPath = /bin/sh;
  340 + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
  341 + showEnvVarsInLog = 0;
  342 + };
343 /* End PBXShellScriptBuildPhase section */ 343 /* End PBXShellScriptBuildPhase section */
344 344
345 /* Begin PBXSourcesBuildPhase section */ 345 /* Begin PBXSourcesBuildPhase section */
1 -<?xml version="1.0" encoding="UTF-8"?>  
2 -<Workspace  
3 - version = "1.0">  
4 - <FileRef  
5 - location = "self:/Users/stuartmorgan/src/embedder-opensource/flutter-desktop-embedding/example/macos/Runner.xcodeproj">  
6 - </FileRef>  
7 -</Workspace>  
@@ -15,7 +15,7 @@ @@ -15,7 +15,7 @@
15 <BuildableReference 15 <BuildableReference
16 BuildableIdentifier = "primary" 16 BuildableIdentifier = "primary"
17 BlueprintIdentifier = "33CC10EC2044A3C60003C045" 17 BlueprintIdentifier = "33CC10EC2044A3C60003C045"
18 - BuildableName = "example.app" 18 + BuildableName = "printing_demo.app"
19 BlueprintName = "Runner" 19 BlueprintName = "Runner"
20 ReferencedContainer = "container:Runner.xcodeproj"> 20 ReferencedContainer = "container:Runner.xcodeproj">
21 </BuildableReference> 21 </BuildableReference>
@@ -27,23 +27,11 @@ @@ -27,23 +27,11 @@
27 selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" 27 selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
28 selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" 28 selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29 shouldUseLaunchSchemeArgsEnv = "YES"> 29 shouldUseLaunchSchemeArgsEnv = "YES">
30 - <Testables>  
31 - <TestableReference  
32 - skipped = "NO">  
33 - <BuildableReference  
34 - BuildableIdentifier = "primary"  
35 - BlueprintIdentifier = "00380F9121DF178D00097171"  
36 - BuildableName = "RunnerUITests.xctest"  
37 - BlueprintName = "RunnerUITests"  
38 - ReferencedContainer = "container:Runner.xcodeproj">  
39 - </BuildableReference>  
40 - </TestableReference>  
41 - </Testables>  
42 <MacroExpansion> 30 <MacroExpansion>
43 <BuildableReference 31 <BuildableReference
44 BuildableIdentifier = "primary" 32 BuildableIdentifier = "primary"
45 BlueprintIdentifier = "33CC10EC2044A3C60003C045" 33 BlueprintIdentifier = "33CC10EC2044A3C60003C045"
46 - BuildableName = "example.app" 34 + BuildableName = "printing_demo.app"
47 BlueprintName = "Runner" 35 BlueprintName = "Runner"
48 ReferencedContainer = "container:Runner.xcodeproj"> 36 ReferencedContainer = "container:Runner.xcodeproj">
49 </BuildableReference> 37 </BuildableReference>
@@ -66,7 +54,7 @@ @@ -66,7 +54,7 @@
66 <BuildableReference 54 <BuildableReference
67 BuildableIdentifier = "primary" 55 BuildableIdentifier = "primary"
68 BlueprintIdentifier = "33CC10EC2044A3C60003C045" 56 BlueprintIdentifier = "33CC10EC2044A3C60003C045"
69 - BuildableName = "example.app" 57 + BuildableName = "printing_demo.app"
70 BlueprintName = "Runner" 58 BlueprintName = "Runner"
71 ReferencedContainer = "container:Runner.xcodeproj"> 59 ReferencedContainer = "container:Runner.xcodeproj">
72 </BuildableReference> 60 </BuildableReference>
@@ -75,7 +63,7 @@ @@ -75,7 +63,7 @@
75 </AdditionalOptions> 63 </AdditionalOptions>
76 </LaunchAction> 64 </LaunchAction>
77 <ProfileAction 65 <ProfileAction
78 - buildConfiguration = "Release" 66 + buildConfiguration = "Profile"
79 shouldUseLaunchSchemeArgsEnv = "YES" 67 shouldUseLaunchSchemeArgsEnv = "YES"
80 savedToolIdentifier = "" 68 savedToolIdentifier = ""
81 useCustomWorkingDirectory = "NO" 69 useCustomWorkingDirectory = "NO"
@@ -85,7 +73,7 @@ @@ -85,7 +73,7 @@
85 <BuildableReference 73 <BuildableReference
86 BuildableIdentifier = "primary" 74 BuildableIdentifier = "primary"
87 BlueprintIdentifier = "33CC10EC2044A3C60003C045" 75 BlueprintIdentifier = "33CC10EC2044A3C60003C045"
88 - BuildableName = "example.app" 76 + BuildableName = "printing_demo.app"
89 BlueprintName = "Runner" 77 BlueprintName = "Runner"
90 ReferencedContainer = "container:Runner.xcodeproj"> 78 ReferencedContainer = "container:Runner.xcodeproj">
91 </BuildableReference> 79 </BuildableReference>
@@ -3,7 +3,7 @@ import FlutterMacOS @@ -3,7 +3,7 @@ import FlutterMacOS
3 3
4 @NSApplicationMain 4 @NSApplicationMain
5 class AppDelegate: FlutterAppDelegate { 5 class AppDelegate: FlutterAppDelegate {
6 - override func applicationShouldTerminateAfterLastWindowClosed(_: NSApplication) -> Bool {  
7 - return true  
8 - } 6 + override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
  7 + return true
  8 + }
9 } 9 }
@@ -5,10 +5,10 @@ @@ -5,10 +5,10 @@
5 // 'flutter create' template. 5 // 'flutter create' template.
6 6
7 // The application's name. By default this is also the title of the Flutter window. 7 // The application's name. By default this is also the title of the Flutter window.
8 -PRODUCT_NAME = example 8 +PRODUCT_NAME = printing_demo
9 9
10 // The application's bundle identifier 10 // The application's bundle identifier
11 -PRODUCT_BUNDLE_IDENTIFIER = com.example.example 11 +PRODUCT_BUNDLE_IDENTIFIER = net.nfet.printingDemo
12 12
13 // The copyright displayed in application information 13 // The copyright displayed in application information
14 -PRODUCT_COPYRIGHT = Copyright © 2020 com.example. All rights reserved. 14 +PRODUCT_COPYRIGHT = Copyright © 2020 net.nfet. All rights reserved.
@@ -2,14 +2,14 @@ import Cocoa @@ -2,14 +2,14 @@ import Cocoa
2 import FlutterMacOS 2 import FlutterMacOS
3 3
4 class MainFlutterWindow: NSWindow { 4 class MainFlutterWindow: NSWindow {
5 - override func awakeFromNib() {  
6 - let flutterViewController = FlutterViewController()  
7 - let windowFrame = frame  
8 - contentViewController = flutterViewController  
9 - setFrame(windowFrame, display: true) 5 + override func awakeFromNib() {
  6 + let flutterViewController = FlutterViewController.init()
  7 + let windowFrame = self.frame
  8 + self.contentViewController = flutterViewController
  9 + self.setFrame(windowFrame, display: true)
10 10
11 - RegisterGeneratedPlugins(registry: flutterViewController) 11 + RegisterGeneratedPlugins(registry: flutterViewController)
12 12
13 - super.awakeFromNib()  
14 - } 13 + super.awakeFromNib()
  14 + }
15 } 15 }
1 -name: printing_example  
2 -description: Pdf Printing Example 1 +name: printing_demo
  2 +description: Pdf Printing Demo
3 3
4 version: 1.0.0+1 4 version: 1.0.0+1
5 5
@@ -2,7 +2,7 @@ import 'dart:io'; @@ -2,7 +2,7 @@ import 'dart:io';
2 2
3 import 'package:flutter_test/flutter_test.dart'; 3 import 'package:flutter_test/flutter_test.dart';
4 import 'package:pdf/pdf.dart'; 4 import 'package:pdf/pdf.dart';
5 -import 'package:printing_example/document.dart'; 5 +import 'package:printing_demo/document.dart';
6 6
7 void main() { 7 void main() {
8 testWidgets('Pdf Generate the document', (WidgetTester tester) async { 8 testWidgets('Pdf Generate the document', (WidgetTester tester) async {
@@ -15,7 +15,7 @@ @@ -15,7 +15,7 @@
15 */ 15 */
16 16
17 import 'package:flutter_driver/driver_extension.dart'; 17 import 'package:flutter_driver/driver_extension.dart';
18 -import 'package:printing_example/main.dart' as app; 18 +import 'package:printing_demo/main.dart' as app;
19 19
20 void main() { 20 void main() {
21 // Enables flutter_driver extension 21 // Enables flutter_driver extension
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <head> 3 <head>
  4 + <!--
  5 + If you are serving your web app in a path other than the root, change the
  6 + href value below to reflect the base path you are serving from.
  7 +
  8 + The path provided below has to start and end with a slash "/" in order for
  9 + it to work correctly.
  10 +
  11 + Fore more details:
  12 + * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base
  13 + -->
  14 + <base href="/">
  15 +
4 <meta charset="UTF-8"> 16 <meta charset="UTF-8">
5 <meta content="IE=Edge" http-equiv="X-UA-Compatible"> 17 <meta content="IE=Edge" http-equiv="X-UA-Compatible">
6 - <meta name="description" content="Pdf Printing Example">  
7 - <link rel="shortcut icon" href="/icons/Icon-192.png" type="image/png"> 18 + <meta name="description" content="A new Flutter project.">
8 19
9 <!-- iOS meta tags & icons --> 20 <!-- iOS meta tags & icons -->
10 <meta name="apple-mobile-web-app-capable" content="yes"> 21 <meta name="apple-mobile-web-app-capable" content="yes">
11 - <meta name="apple-mobile-web-status-bar-style" content="black">  
12 - <meta name="apple-mobile-web-app-title" content="example">  
13 - <link rel="apple-touch-icon" href="/icons/Icon-192.png"> 22 + <meta name="apple-mobile-web-app-status-bar-style" content="black">
  23 + <meta name="apple-mobile-web-app-title" content="printing_demo">
  24 + <link rel="apple-touch-icon" href="icons/Icon-192.png">
  25 +
  26 + <!-- Favicon -->
  27 + <link rel="icon" type="image/png" href="favicon.png"/>
14 28
15 - <title>Pdf Printing Example</title>  
16 - <link rel="manifest" href="/manifest.json"> 29 + <title>printing_demo</title>
  30 + <link rel="manifest" href="manifest.json">
17 </head> 31 </head>
18 <body> 32 <body>
19 <!-- This script installs service_worker.js to provide PWA functionality to 33 <!-- This script installs service_worker.js to provide PWA functionality to
@@ -21,8 +35,8 @@ @@ -21,8 +35,8 @@
21 https://developers.google.com/web/fundamentals/primers/service-workers --> 35 https://developers.google.com/web/fundamentals/primers/service-workers -->
22 <script> 36 <script>
23 if ('serviceWorker' in navigator) { 37 if ('serviceWorker' in navigator) {
24 - window.addEventListener('load', function () {  
25 - navigator.serviceWorker.register('/flutter_service_worker.js'); 38 + window.addEventListener('flutter-first-frame', function () {
  39 + navigator.serviceWorker.register('flutter_service_worker.js');
26 }); 40 });
27 } 41 }
28 </script> 42 </script>
1 { 1 {
2 - "name": "example",  
3 - "short_name": "example", 2 + "name": "printing_demo",
  3 + "short_name": "printing_demo",
4 "start_url": ".", 4 "start_url": ".",
5 - "display": "minimal-ui", 5 + "display": "standalone",
6 "background_color": "#0175C2", 6 "background_color": "#0175C2",
7 "theme_color": "#0175C2", 7 "theme_color": "#0175C2",
8 "description": "A new Flutter project.", 8 "description": "A new Flutter project.",