Showing
11 changed files
with
176 additions
and
12 deletions
| @@ -3,5 +3,5 @@ add_library( convertImage | @@ -3,5 +3,5 @@ add_library( convertImage | ||
| 3 | # Sets the library as a shared library. | 3 | # Sets the library as a shared library. |
| 4 | SHARED | 4 | SHARED |
| 5 | # Provides a relative path to your source file(s). | 5 | # Provides a relative path to your source file(s). |
| 6 | - ../ios/Classes/converter.c | 6 | + ../ios/native/converter.c |
| 7 | ) | 7 | ) |
| @@ -18,9 +18,11 @@ | @@ -18,9 +18,11 @@ | ||
| 18 | <string>1.0</string> | 18 | <string>1.0</string> |
| 19 | <key>CFBundleSignature</key> | 19 | <key>CFBundleSignature</key> |
| 20 | <string>????</string> | 20 | <string>????</string> |
| 21 | + <key>LSApplicationCategoryType</key> | ||
| 22 | + <string></string> | ||
| 21 | <key>CFBundleVersion</key> | 23 | <key>CFBundleVersion</key> |
| 22 | <string>1.0</string> | 24 | <string>1.0</string> |
| 23 | <key>MinimumOSVersion</key> | 25 | <key>MinimumOSVersion</key> |
| 24 | - <string>9.0</string> | 26 | + <string>10.0</string> |
| 25 | </dict> | 27 | </dict> |
| 26 | </plist> | 28 | </plist> |
example/ios/Podfile.lock
0 → 100644
| 1 | +PODS: | ||
| 2 | + - camera (0.0.1): | ||
| 3 | + - Flutter | ||
| 4 | + - Flutter (1.0.0) | ||
| 5 | + - processing_camera_image (0.0.1): | ||
| 6 | + - Flutter | ||
| 7 | + | ||
| 8 | +DEPENDENCIES: | ||
| 9 | + - camera (from `.symlinks/plugins/camera/ios`) | ||
| 10 | + - Flutter (from `Flutter`) | ||
| 11 | + - processing_camera_image (from `.symlinks/plugins/processing_camera_image/ios`) | ||
| 12 | + | ||
| 13 | +EXTERNAL SOURCES: | ||
| 14 | + camera: | ||
| 15 | + :path: ".symlinks/plugins/camera/ios" | ||
| 16 | + Flutter: | ||
| 17 | + :path: Flutter | ||
| 18 | + processing_camera_image: | ||
| 19 | + :path: ".symlinks/plugins/processing_camera_image/ios" | ||
| 20 | + | ||
| 21 | +SPEC CHECKSUMS: | ||
| 22 | + camera: 9993f92f2c793e87b65e35f3a23c70582afb05b1 | ||
| 23 | + Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a | ||
| 24 | + processing_camera_image: 095bec249ab49bcd51493397d8f1d5f954172a8e | ||
| 25 | + | ||
| 26 | +PODFILE CHECKSUM: aafe91acc616949ddb318b77800a7f51bffa2a4c | ||
| 27 | + | ||
| 28 | +COCOAPODS: 1.11.3 |
| @@ -3,7 +3,7 @@ | @@ -3,7 +3,7 @@ | ||
| 3 | archiveVersion = 1; | 3 | archiveVersion = 1; |
| 4 | classes = { | 4 | classes = { |
| 5 | }; | 5 | }; |
| 6 | - objectVersion = 50; | 6 | + objectVersion = 51; |
| 7 | objects = { | 7 | objects = { |
| 8 | 8 | ||
| 9 | /* Begin PBXBuildFile section */ | 9 | /* Begin PBXBuildFile section */ |
| @@ -13,6 +13,7 @@ | @@ -13,6 +13,7 @@ | ||
| 13 | 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; | 13 | 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; |
| 14 | 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; | 14 | 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; |
| 15 | 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; | 15 | 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; |
| 16 | + DBBEE26BA65F30848B735563 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4A19C00B4DF1E7F67B7FB4F4 /* Pods_Runner.framework */; }; | ||
| 16 | /* End PBXBuildFile section */ | 17 | /* End PBXBuildFile section */ |
| 17 | 18 | ||
| 18 | /* Begin PBXCopyFilesBuildPhase section */ | 19 | /* Begin PBXCopyFilesBuildPhase section */ |
| @@ -31,10 +32,13 @@ | @@ -31,10 +32,13 @@ | ||
| 31 | /* Begin PBXFileReference section */ | 32 | /* Begin PBXFileReference section */ |
| 32 | 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>"; }; |
| 33 | 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>"; }; |
| 35 | + 2A5D66613F990B7EE01C4239 /* 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>"; }; | ||
| 34 | 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; | 36 | 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; |
| 37 | + 4A19C00B4DF1E7F67B7FB4F4 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 35 | 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; | 38 | 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; |
| 36 | 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; | 39 | 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; |
| 37 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; | 40 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; |
| 41 | + 8D9B524906DEA065966A40C5 /* 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>"; }; | ||
| 38 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; | 42 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; |
| 39 | 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; | 43 | 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; |
| 40 | 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; | 44 | 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| @@ -42,6 +46,7 @@ | @@ -42,6 +46,7 @@ | ||
| 42 | 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; | 46 | 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; |
| 43 | 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; | 47 | 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; |
| 44 | 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; | 48 | 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; |
| 49 | + A9540954C5C72210B90E12CE /* 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>"; }; | ||
| 45 | /* End PBXFileReference section */ | 50 | /* End PBXFileReference section */ |
| 46 | 51 | ||
| 47 | /* Begin PBXFrameworksBuildPhase section */ | 52 | /* Begin PBXFrameworksBuildPhase section */ |
| @@ -49,12 +54,31 @@ | @@ -49,12 +54,31 @@ | ||
| 49 | isa = PBXFrameworksBuildPhase; | 54 | isa = PBXFrameworksBuildPhase; |
| 50 | buildActionMask = 2147483647; | 55 | buildActionMask = 2147483647; |
| 51 | files = ( | 56 | files = ( |
| 57 | + DBBEE26BA65F30848B735563 /* Pods_Runner.framework in Frameworks */, | ||
| 52 | ); | 58 | ); |
| 53 | runOnlyForDeploymentPostprocessing = 0; | 59 | runOnlyForDeploymentPostprocessing = 0; |
| 54 | }; | 60 | }; |
| 55 | /* End PBXFrameworksBuildPhase section */ | 61 | /* End PBXFrameworksBuildPhase section */ |
| 56 | 62 | ||
| 57 | /* Begin PBXGroup section */ | 63 | /* Begin PBXGroup section */ |
| 64 | + 4612BC91B557E0747921F8EF /* Pods */ = { | ||
| 65 | + isa = PBXGroup; | ||
| 66 | + children = ( | ||
| 67 | + 2A5D66613F990B7EE01C4239 /* Pods-Runner.debug.xcconfig */, | ||
| 68 | + 8D9B524906DEA065966A40C5 /* Pods-Runner.release.xcconfig */, | ||
| 69 | + A9540954C5C72210B90E12CE /* Pods-Runner.profile.xcconfig */, | ||
| 70 | + ); | ||
| 71 | + path = Pods; | ||
| 72 | + sourceTree = "<group>"; | ||
| 73 | + }; | ||
| 74 | + 53CFE932C0C7FF34D0E1E16C /* Frameworks */ = { | ||
| 75 | + isa = PBXGroup; | ||
| 76 | + children = ( | ||
| 77 | + 4A19C00B4DF1E7F67B7FB4F4 /* Pods_Runner.framework */, | ||
| 78 | + ); | ||
| 79 | + name = Frameworks; | ||
| 80 | + sourceTree = "<group>"; | ||
| 81 | + }; | ||
| 58 | 9740EEB11CF90186004384FC /* Flutter */ = { | 82 | 9740EEB11CF90186004384FC /* Flutter */ = { |
| 59 | isa = PBXGroup; | 83 | isa = PBXGroup; |
| 60 | children = ( | 84 | children = ( |
| @@ -72,6 +96,8 @@ | @@ -72,6 +96,8 @@ | ||
| 72 | 9740EEB11CF90186004384FC /* Flutter */, | 96 | 9740EEB11CF90186004384FC /* Flutter */, |
| 73 | 97C146F01CF9000F007C117D /* Runner */, | 97 | 97C146F01CF9000F007C117D /* Runner */, |
| 74 | 97C146EF1CF9000F007C117D /* Products */, | 98 | 97C146EF1CF9000F007C117D /* Products */, |
| 99 | + 4612BC91B557E0747921F8EF /* Pods */, | ||
| 100 | + 53CFE932C0C7FF34D0E1E16C /* Frameworks */, | ||
| 75 | ); | 101 | ); |
| 76 | sourceTree = "<group>"; | 102 | sourceTree = "<group>"; |
| 77 | }; | 103 | }; |
| @@ -105,12 +131,14 @@ | @@ -105,12 +131,14 @@ | ||
| 105 | isa = PBXNativeTarget; | 131 | isa = PBXNativeTarget; |
| 106 | buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; | 132 | buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; |
| 107 | buildPhases = ( | 133 | buildPhases = ( |
| 134 | + EBD6C8B6886F33A70E06AC90 /* [CP] Check Pods Manifest.lock */, | ||
| 108 | 9740EEB61CF901F6004384FC /* Run Script */, | 135 | 9740EEB61CF901F6004384FC /* Run Script */, |
| 109 | 97C146EA1CF9000F007C117D /* Sources */, | 136 | 97C146EA1CF9000F007C117D /* Sources */, |
| 110 | 97C146EB1CF9000F007C117D /* Frameworks */, | 137 | 97C146EB1CF9000F007C117D /* Frameworks */, |
| 111 | 97C146EC1CF9000F007C117D /* Resources */, | 138 | 97C146EC1CF9000F007C117D /* Resources */, |
| 112 | 9705A1C41CF9048500538489 /* Embed Frameworks */, | 139 | 9705A1C41CF9048500538489 /* Embed Frameworks */, |
| 113 | 3B06AD1E1E4923F5004D2608 /* Thin Binary */, | 140 | 3B06AD1E1E4923F5004D2608 /* Thin Binary */, |
| 141 | + 54F95E9059B6D8624F6E9011 /* [CP] Embed Pods Frameworks */, | ||
| 114 | ); | 142 | ); |
| 115 | buildRules = ( | 143 | buildRules = ( |
| 116 | ); | 144 | ); |
| @@ -183,6 +211,23 @@ | @@ -183,6 +211,23 @@ | ||
| 183 | shellPath = /bin/sh; | 211 | shellPath = /bin/sh; |
| 184 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; | 212 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; |
| 185 | }; | 213 | }; |
| 214 | + 54F95E9059B6D8624F6E9011 /* [CP] Embed Pods Frameworks */ = { | ||
| 215 | + isa = PBXShellScriptBuildPhase; | ||
| 216 | + buildActionMask = 2147483647; | ||
| 217 | + files = ( | ||
| 218 | + ); | ||
| 219 | + inputFileListPaths = ( | ||
| 220 | + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", | ||
| 221 | + ); | ||
| 222 | + name = "[CP] Embed Pods Frameworks"; | ||
| 223 | + outputFileListPaths = ( | ||
| 224 | + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", | ||
| 225 | + ); | ||
| 226 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 227 | + shellPath = /bin/sh; | ||
| 228 | + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; | ||
| 229 | + showEnvVarsInLog = 0; | ||
| 230 | + }; | ||
| 186 | 9740EEB61CF901F6004384FC /* Run Script */ = { | 231 | 9740EEB61CF901F6004384FC /* Run Script */ = { |
| 187 | isa = PBXShellScriptBuildPhase; | 232 | isa = PBXShellScriptBuildPhase; |
| 188 | buildActionMask = 2147483647; | 233 | buildActionMask = 2147483647; |
| @@ -197,6 +242,28 @@ | @@ -197,6 +242,28 @@ | ||
| 197 | shellPath = /bin/sh; | 242 | shellPath = /bin/sh; |
| 198 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; | 243 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; |
| 199 | }; | 244 | }; |
| 245 | + EBD6C8B6886F33A70E06AC90 /* [CP] Check Pods Manifest.lock */ = { | ||
| 246 | + isa = PBXShellScriptBuildPhase; | ||
| 247 | + buildActionMask = 2147483647; | ||
| 248 | + files = ( | ||
| 249 | + ); | ||
| 250 | + inputFileListPaths = ( | ||
| 251 | + ); | ||
| 252 | + inputPaths = ( | ||
| 253 | + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", | ||
| 254 | + "${PODS_ROOT}/Manifest.lock", | ||
| 255 | + ); | ||
| 256 | + name = "[CP] Check Pods Manifest.lock"; | ||
| 257 | + outputFileListPaths = ( | ||
| 258 | + ); | ||
| 259 | + outputPaths = ( | ||
| 260 | + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", | ||
| 261 | + ); | ||
| 262 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 263 | + shellPath = /bin/sh; | ||
| 264 | + 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"; | ||
| 265 | + showEnvVarsInLog = 0; | ||
| 266 | + }; | ||
| 200 | /* End PBXShellScriptBuildPhase section */ | 267 | /* End PBXShellScriptBuildPhase section */ |
| 201 | 268 | ||
| 202 | /* Begin PBXSourcesBuildPhase section */ | 269 | /* Begin PBXSourcesBuildPhase section */ |
| @@ -288,6 +355,7 @@ | @@ -288,6 +355,7 @@ | ||
| 288 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | 355 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
| 289 | CLANG_ENABLE_MODULES = YES; | 356 | CLANG_ENABLE_MODULES = YES; |
| 290 | CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; | 357 | CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; |
| 358 | + DEVELOPMENT_TEAM = 2A43564TP9; | ||
| 291 | ENABLE_BITCODE = NO; | 359 | ENABLE_BITCODE = NO; |
| 292 | INFOPLIST_FILE = Runner/Info.plist; | 360 | INFOPLIST_FILE = Runner/Info.plist; |
| 293 | LD_RUNPATH_SEARCH_PATHS = ( | 361 | LD_RUNPATH_SEARCH_PATHS = ( |
| @@ -416,6 +484,7 @@ | @@ -416,6 +484,7 @@ | ||
| 416 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | 484 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
| 417 | CLANG_ENABLE_MODULES = YES; | 485 | CLANG_ENABLE_MODULES = YES; |
| 418 | CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; | 486 | CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; |
| 487 | + DEVELOPMENT_TEAM = 2A43564TP9; | ||
| 419 | ENABLE_BITCODE = NO; | 488 | ENABLE_BITCODE = NO; |
| 420 | INFOPLIST_FILE = Runner/Info.plist; | 489 | INFOPLIST_FILE = Runner/Info.plist; |
| 421 | LD_RUNPATH_SEARCH_PATHS = ( | 490 | LD_RUNPATH_SEARCH_PATHS = ( |
| @@ -438,6 +507,7 @@ | @@ -438,6 +507,7 @@ | ||
| 438 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | 507 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
| 439 | CLANG_ENABLE_MODULES = YES; | 508 | CLANG_ENABLE_MODULES = YES; |
| 440 | CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; | 509 | CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; |
| 510 | + DEVELOPMENT_TEAM = 2A43564TP9; | ||
| 441 | ENABLE_BITCODE = NO; | 511 | ENABLE_BITCODE = NO; |
| 442 | INFOPLIST_FILE = Runner/Info.plist; | 512 | INFOPLIST_FILE = Runner/Info.plist; |
| 443 | LD_RUNPATH_SEARCH_PATHS = ( | 513 | LD_RUNPATH_SEARCH_PATHS = ( |
| @@ -2,6 +2,10 @@ | @@ -2,6 +2,10 @@ | ||
| 2 | <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | 2 | <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
| 3 | <plist version="1.0"> | 3 | <plist version="1.0"> |
| 4 | <dict> | 4 | <dict> |
| 5 | + <key>NSCameraUsageDescription</key> | ||
| 6 | + <string>your usage description here</string> | ||
| 7 | + <key>NSMicrophoneUsageDescription</key> | ||
| 8 | + <string>your usage description here</string> | ||
| 5 | <key>CFBundleDevelopmentRegion</key> | 9 | <key>CFBundleDevelopmentRegion</key> |
| 6 | <string>$(DEVELOPMENT_LANGUAGE)</string> | 10 | <string>$(DEVELOPMENT_LANGUAGE)</string> |
| 7 | <key>CFBundleDisplayName</key> | 11 | <key>CFBundleDisplayName</key> |
| @@ -5,20 +5,26 @@ | @@ -5,20 +5,26 @@ | ||
| 5 | Pod::Spec.new do |s| | 5 | Pod::Spec.new do |s| |
| 6 | s.name = 'processing_camera_image' | 6 | s.name = 'processing_camera_image' |
| 7 | s.version = '0.0.1' | 7 | s.version = '0.0.1' |
| 8 | - s.summary = 'A new Flutter project.' | 8 | + s.summary = 'A flutter plugin for process fast camera image from plugin camera of google' |
| 9 | s.description = <<-DESC | 9 | s.description = <<-DESC |
| 10 | A new Flutter project. | 10 | A new Flutter project. |
| 11 | DESC | 11 | DESC |
| 12 | - s.homepage = 'http://example.com' | 12 | + s.homepage = 'http://github.com/thuanpham98/processing_camera_image' |
| 13 | s.license = { :file => '../LICENSE' } | 13 | s.license = { :file => '../LICENSE' } |
| 14 | - s.author = { 'Your Company' => 'email@example.com' } | 14 | + s.author = { 'thuanpm' => 'pmttmp24@gmail.com' } |
| 15 | s.source = { :path => '.' } | 15 | s.source = { :path => '.' } |
| 16 | - s.source_files = 'Classes/**/*' | ||
| 17 | - s.public_header_files = 'Classes/ProcessingCameraImagePlugin.h' | 16 | + s.public_header_files = 'Classes/**/*.h' |
| 17 | + s.source_files = ['Classes/**/*', 'native/**/*.{c,h}',] | ||
| 18 | + # s.public_header_files = 'Classes/ProcessingCameraImagePlugin.h' | ||
| 18 | s.dependency 'Flutter' | 19 | s.dependency 'Flutter' |
| 19 | s.platform = :ios, '9.0' | 20 | s.platform = :ios, '9.0' |
| 20 | 21 | ||
| 21 | # Flutter.framework does not contain a i386 slice. | 22 | # Flutter.framework does not contain a i386 slice. |
| 22 | - s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } | 23 | + s.pod_target_xcconfig = { |
| 24 | + 'HEADER_SEARCH_PATHS' => [ | ||
| 25 | + '$(PODS_TARGET_SRCROOT)/native', | ||
| 26 | + ], | ||
| 27 | + 'DEFINES_MODULE' => 'YES', | ||
| 28 | + 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } | ||
| 23 | s.swift_version = '5.0' | 29 | s.swift_version = '5.0' |
| 24 | end | 30 | end |
| @@ -6,7 +6,7 @@ import 'package:processing_camera_image/processing_camera_image_i.dart'; | @@ -6,7 +6,7 @@ import 'package:processing_camera_image/processing_camera_image_i.dart'; | ||
| 6 | abstract class ProcessingCameraImage { | 6 | abstract class ProcessingCameraImage { |
| 7 | factory ProcessingCameraImage() => IProcessingCameraImage(); | 7 | factory ProcessingCameraImage() => IProcessingCameraImage(); |
| 8 | 8 | ||
| 9 | - /// [ProcessCameraImageToRGB]. | 9 | + /// [processCameraImageToRGB]. for Android with YUV420. |
| 10 | imglib.Image? processCameraImageToRGB({ | 10 | imglib.Image? processCameraImageToRGB({ |
| 11 | int? width, | 11 | int? width, |
| 12 | int? height, | 12 | int? height, |
| @@ -19,7 +19,7 @@ abstract class ProcessingCameraImage { | @@ -19,7 +19,7 @@ abstract class ProcessingCameraImage { | ||
| 19 | int? bytesPerPixelPlan1, | 19 | int? bytesPerPixelPlan1, |
| 20 | }); | 20 | }); |
| 21 | 21 | ||
| 22 | - /// [processCameraImageToGray]. | 22 | + /// [processCameraImageToGray]. for Android with YUV420. |
| 23 | imglib.Image? processCameraImageToGray({ | 23 | imglib.Image? processCameraImageToGray({ |
| 24 | int? width, | 24 | int? width, |
| 25 | int? height, | 25 | int? height, |
| @@ -27,7 +27,23 @@ abstract class ProcessingCameraImage { | @@ -27,7 +27,23 @@ abstract class ProcessingCameraImage { | ||
| 27 | double? rotationAngle, | 27 | double? rotationAngle, |
| 28 | }); | 28 | }); |
| 29 | 29 | ||
| 30 | - // /// [processCameraImageToGray8Bit]. | 30 | + /// [processCameraImageToRGBIOS]. for IOS with YUV420. |
| 31 | + imglib.Image? processCameraImageToRGBIOS({ | ||
| 32 | + int? width, | ||
| 33 | + int? height, | ||
| 34 | + Uint8List? plane0, | ||
| 35 | + double? rotationAngle, | ||
| 36 | + }); | ||
| 37 | + | ||
| 38 | + /// [processCameraImageToGrayIOS]. for IOS with YUV420. | ||
| 39 | + imglib.Image? processCameraImageToGrayIOS({ | ||
| 40 | + int? width, | ||
| 41 | + int? height, | ||
| 42 | + Uint8List? plane0, | ||
| 43 | + double? rotationAngle, | ||
| 44 | + }); | ||
| 45 | + | ||
| 46 | + /// [processCameraImageToGray8Bit]. for Android with YUV420. | ||
| 31 | Uint8List? processCameraImageToGray8Bit({ | 47 | Uint8List? processCameraImageToGray8Bit({ |
| 32 | int? width, | 48 | int? width, |
| 33 | int? height, | 49 | int? height, |
| @@ -174,4 +174,39 @@ class IProcessingCameraImage implements ProcessingCameraImage { | @@ -174,4 +174,39 @@ class IProcessingCameraImage implements ProcessingCameraImage { | ||
| 174 | 174 | ||
| 175 | return imgData; | 175 | return imgData; |
| 176 | } | 176 | } |
| 177 | + | ||
| 178 | + /// [processCameraImageToRGBIOS]. for IOS with YUV420. | ||
| 179 | + @override | ||
| 180 | + imglib.Image? processCameraImageToRGBIOS({ | ||
| 181 | + int? width, | ||
| 182 | + int? height, | ||
| 183 | + Uint8List? plane0, | ||
| 184 | + double? rotationAngle, | ||
| 185 | + }) { | ||
| 186 | + if (width == null || height == null || plane0 == null || plane0.isEmpty) { | ||
| 187 | + return null; | ||
| 188 | + } | ||
| 189 | + if (rotationAngle != null) { | ||
| 190 | + imglib.copyRotate( | ||
| 191 | + imglib.Image.fromBytes(width, height, List<int>.from(plane0)), | ||
| 192 | + rotationAngle); | ||
| 193 | + } | ||
| 194 | + return imglib.Image.fromBytes(width, height, List<int>.from(plane0)); | ||
| 195 | + } | ||
| 196 | + | ||
| 197 | + /// [processCameraImageToGrayIOS]. for IOS with YUV420. | ||
| 198 | + @override | ||
| 199 | + imglib.Image? processCameraImageToGrayIOS({ | ||
| 200 | + int? width, | ||
| 201 | + int? height, | ||
| 202 | + Uint8List? plane0, | ||
| 203 | + double? rotationAngle, | ||
| 204 | + }) { | ||
| 205 | + return processCameraImageToGray( | ||
| 206 | + height: height, | ||
| 207 | + width: width, | ||
| 208 | + plane0: plane0, | ||
| 209 | + rotationAngle: rotationAngle, | ||
| 210 | + ); | ||
| 211 | + } | ||
| 177 | } | 212 | } |
-
Please register or login to post a comment