Commit 5d3d676a authored by 林生雨's avatar 林生雨

commit

parent 4e7c15a7
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<codeStyleSettings language="XML">
<indentOptions>
<option name="CONTINUATION_INDENT_SIZE" value="4" />
</indentOptions>
<arrangement>
<rules>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:android</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:id</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>style</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
<order>ANDROID_ATTRIBUTE_ORDER</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>.*</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
</code_scheme>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with NO BOM" />
</project>
\ No newline at end of file
<component name="libraryTable">
<library name="Dart SDK">
<CLASSES>
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/async" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/collection" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/convert" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/core" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/developer" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/html" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/io" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/isolate" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/math" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/mirrors" />
<root url="file:///Users/apple/Downloads/flutter/bin/cache/dart-sdk/lib/typed_data" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Flutter Plugins" type="FlutterPluginsLibraryType">
<CLASSES>
<root url="file://$PROJECT_DIR$" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Flutter for Android">
<CLASSES>
<root url="jar:///Users/apple/Downloads/flutter/bin/cache/artifacts/engine/android-arm/flutter.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectType">
<option name="id" value="io.flutter" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/gengmei_flutter_plugin.iml" filepath="$PROJECT_DIR$/gengmei_flutter_plugin.iml" />
<module fileurl="file://$PROJECT_DIR$/android/gengmei_flutter_plugin_android.iml" filepath="$PROJECT_DIR$/android/gengmei_flutter_plugin_android.iml" />
<module fileurl="file://$PROJECT_DIR$/example/android/gengmei_flutter_plugin_example_android.iml" filepath="$PROJECT_DIR$/example/android/gengmei_flutter_plugin_example_android.iml" />
</modules>
</component>
</project>
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="example/lib/main.dart" type="FlutterRunConfigurationType" factoryName="Flutter" singleton="false">
<option name="filePath" value="$PROJECT_DIR$/example/lib/main.dart" />
<method v="2" />
</configuration>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
<mapping directory="$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin" vcs="Git" />
</component>
</project>
\ No newline at end of file
......@@ -6,10 +6,9 @@
</component>
<component name="ChangeListManager">
<list default="true" id="5be6bbb5-7d6e-4540-a24f-d2b3bf78b3ba" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.gitignore" beforeDir="false" afterPath="$PROJECT_DIR$/.gitignore" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/.gitignore" beforeDir="false" afterPath="$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/.gitignore" afterDir="false" />
<change beforePath="$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.m" beforeDir="false" afterPath="$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.m" afterDir="false" />
</list>
<ignored path="$PROJECT_DIR$/.dart_tool/" />
<ignored path="$PROJECT_DIR$/.idea/" />
......@@ -26,47 +25,48 @@
<component name="DefaultGradleProjectSettings">
<option name="isMigrated" value="true" />
</component>
<component name="ExecutionTargetManager" SELECTED_TARGET="50d1ce73" />
<component name="ExecutionTargetManager" SELECTED_TARGET="AKC0218316000622" />
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/android/build.gradle">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="203">
<caret line="39" selection-start-line="39" selection-start-column="2" selection-end-line="41" selection-end-column="7" />
</state>
</provider>
<entry file="file://$PROJECT_DIR$/example/android/app/app.iml">
<provider selected="true" editor-type-id="text-editor" />
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/android/gengmei_flutter_plugin.iml">
<entry file="file://$PROJECT_DIR$/ios/Classes/Image/AlbumItem.m">
<provider selected="true" editor-type-id="text-editor" />
</entry>
</file>
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/android/gengmei_flutter_plugin_android.iml">
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/ios/Classes/Image/AlbumItem.h">
<provider selected="true" editor-type-id="text-editor" />
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/.idea/workspace.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-153">
<caret line="28" column="40" selection-start-line="28" selection-start-column="40" selection-end-line="28" selection-end-column="40" />
</state>
</provider>
<entry file="file://$PROJECT_DIR$/ios/Classes/Image/ResultManager.m">
<provider selected="true" editor-type-id="text-editor" />
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/.metadata">
<entry file="file://$PROJECT_DIR$/ios/Classes/Image/ResultManager.h">
<provider selected="true" editor-type-id="text-editor" />
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/.gitignore">
<entry file="file://$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="154">
<caret line="7" selection-start-line="7" selection-end-line="7" />
<state relative-caret-position="88">
<caret line="4" selection-start-line="4" selection-end-line="4" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.m">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="245">
<caret line="13" column="4" selection-start-line="13" selection-start-column="4" selection-end-line="13" selection-end-column="4" />
</state>
</provider>
</entry>
......@@ -85,15 +85,6 @@
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/lib/SharedPlugin.dart">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1606">
<caret line="76" column="75" selection-start-line="76" selection-start-column="75" selection-end-line="76" selection-end-column="75" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/pubspec.yaml">
<provider selected="true" editor-type-id="text-editor">
......@@ -153,10 +144,10 @@
</option>
</component>
<component name="ProjectFrameBounds">
<option name="x" value="338" />
<option name="y" value="-975" />
<option name="width" value="1440" />
<option name="height" value="812" />
<option name="x" value="523" />
<option name="y" value="-1080" />
<option name="width" value="1920" />
<option name="height" value="1080" />
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
<component name="ProjectView">
......@@ -164,7 +155,6 @@
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="PackagesPane" />
<pane id="ProjectPane">
<subPane>
<expand>
......@@ -175,30 +165,28 @@
<path>
<item name="gengmei_flutter_plugin" type="b2602c69:ProjectViewProjectNode" />
<item name="gengmei_flutter_plugin" type="462c0819:PsiDirectoryNode" />
<item name=".idea" type="462c0819:PsiDirectoryNode" />
<item name="ios" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gengmei_flutter_plugin" type="b2602c69:ProjectViewProjectNode" />
<item name="gengmei_flutter_plugin" type="462c0819:PsiDirectoryNode" />
<item name="android" type="462c0819:PsiDirectoryNode" />
<item name="ios" type="462c0819:PsiDirectoryNode" />
<item name="Classes" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gengmei_flutter_plugin" type="b2602c69:ProjectViewProjectNode" />
<item name="gengmei_flutter_plugin" type="462c0819:PsiDirectoryNode" />
<item name="android" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gengmei_flutter_plugin" type="b2602c69:ProjectViewProjectNode" />
<item name="gengmei_flutter_plugin" type="462c0819:PsiDirectoryNode" />
<item name="lib" type="462c0819:PsiDirectoryNode" />
<item name="ios" type="462c0819:PsiDirectoryNode" />
<item name="Classes" type="462c0819:PsiDirectoryNode" />
<item name="Image" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
<pane id="Scope" />
<pane id="AndroidView" />
<pane id="PackagesPane" />
<pane id="Scope" />
</panes>
</component>
<component name="PropertiesComponent">
......@@ -244,10 +232,9 @@
<servers />
</component>
<component name="ToolWindowManager">
<frame x="431" y="-980" width="1440" height="812" extended-state="0" />
<editor active="true" />
<frame x="523" y="-1080" width="1920" height="1080" extended-state="0" />
<layout>
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.22818312" />
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.16986156" />
<window_info id="Captures" order="1" side_tool="true" />
<window_info id="Structure" order="2" side_tool="true" />
<window_info id="Image Layers" order="3" />
......@@ -257,7 +244,7 @@
<window_info id="Capture Tool" order="7" />
<window_info id="Favorites" order="8" side_tool="true" />
<window_info anchor="bottom" id="Dart Analysis" order="0" weight="0.32963988" />
<window_info anchor="bottom" id="Run" order="1" weight="0.6333333" />
<window_info anchor="bottom" id="Run" order="1" weight="0.42222223" />
<window_info anchor="bottom" id="TODO" order="2" />
<window_info anchor="bottom" id="Android Profiler" order="3" show_stripe_button="false" />
<window_info anchor="bottom" id="Logcat" order="4" weight="0.6425591" />
......@@ -266,7 +253,7 @@
<window_info anchor="bottom" id="Event Log" order="7" side_tool="true" />
<window_info anchor="bottom" id="Flutter Performance" order="8" side_tool="true" />
<window_info anchor="bottom" id="Version Control" order="9" />
<window_info anchor="bottom" id="Messages" order="10" weight="0.34567901" />
<window_info anchor="bottom" id="Messages" order="10" visible="true" weight="0.3451417" />
<window_info anchor="right" id="Device File Explorer" order="0" side_tool="true" weight="0.32960597" />
<window_info anchor="right" id="Capture Analysis" order="1" />
<window_info anchor="right" id="Theme Preview" order="2" />
......@@ -278,34 +265,6 @@
</layout>
</component>
<component name="editorHistoryManager">
<entry file="file://$USER_HOME$/Downloads/flutter/bin/cache/pkg/sky_engine/lib/io/file.dart">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="139">
<caret line="517" column="12" selection-start-line="517" selection-start-column="12" selection-end-line="517" selection-end-column="12" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/Downloads/flutter/bin/cache/pkg/sky_engine/lib/typed_data/typed_data.dart">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="139">
<caret line="787" column="15" selection-start-line="787" selection-start-column="15" selection-end-line="787" selection-end-column="15" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/Downloads/flutter/packages/flutter/lib/src/widgets/image.dart">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="161">
<caret line="522" column="13" selection-start-line="522" selection-start-column="13" selection-end-line="522" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/Downloads/flutter/bin/cache/pkg/sky_engine/lib/async/stream.dart">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="139">
<caret line="827" column="9" selection-start-line="827" selection-start-column="9" selection-end-line="827" selection-end-column="9" />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/Downloads/flutter/bin/cache/pkg/sky_engine/lib/io/file_system_entity.dart">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-125">
......@@ -344,23 +303,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.m">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="286">
<caret line="13" column="4" selection-start-line="13" selection-start-column="4" selection-end-line="13" selection-end-column="4" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/ios/Classes/Image/AlbumItem.m">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="88">
<caret line="4" selection-start-line="4" selection-end-line="4" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/android/src/main/kotlin/com/example/gengmei_flutter_plugin/GengmeiFlutterPlugin.kt" />
<entry file="file://$PROJECT_DIR$/example/android/app/src/main/AndroidManifest.xml">
<provider selected="true" editor-type-id="text-editor">
......@@ -484,30 +426,34 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pubspec.yaml">
<entry file="file://$PROJECT_DIR$/android/src/main/java/com/example/gengmei_flutter_plugin/a" />
<entry file="file://$PROJECT_DIR$/android/build.gradle">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="44">
<caret line="2" column="9" selection-start-line="2" selection-start-column="9" selection-end-line="2" selection-end-column="16" />
<state relative-caret-position="858">
<caret line="39" selection-start-line="39" selection-start-column="2" selection-end-line="41" selection-end-column="7" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/android/src/main/AndroidManifest.xml">
<entry file="file://$PROJECT_DIR$/android/gengmei_flutter_plugin.iml">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/android/gengmei_flutter_plugin_android.iml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="264">
<caret line="12" column="11" selection-start-line="12" selection-start-column="11" selection-end-line="12" selection-end-column="11" />
<state relative-caret-position="220">
<caret line="10" column="75" selection-start-line="10" selection-start-column="75" selection-end-line="10" selection-end-column="75" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/android/src/main/java/com/example/gengmei_flutter_plugin/a">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/.idea/workspace.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-153">
<caret line="28" column="40" selection-start-line="28" selection-start-column="40" selection-end-line="28" selection-end-column="40" />
<state relative-caret-position="1474">
<caret line="67" column="40" selection-start-line="67" selection-start-column="40" selection-end-line="67" selection-end-column="40" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/.metadata">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/.gitignore">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="154">
......@@ -518,21 +464,48 @@
<entry file="file://$PROJECT_DIR$/.packages">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/.metadata">
<provider selected="true" editor-type-id="text-editor" />
<entry file="file://$PROJECT_DIR$/android/src/main/AndroidManifest.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="264">
<caret line="12" column="11" selection-start-line="12" selection-start-column="11" selection-end-line="12" selection-end-column="11" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/android/build.gradle">
<entry file="file://$PROJECT_DIR$/pubspec.yaml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="203">
<caret line="39" selection-start-line="39" selection-start-column="2" selection-end-line="41" selection-end-column="7" />
<state relative-caret-position="44">
<caret line="2" column="9" selection-start-line="2" selection-start-column="9" selection-end-line="2" selection-end-column="16" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/android/gengmei_flutter_plugin.iml">
<entry file="file://$PROJECT_DIR$/example/android/app/app.iml">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/android/gengmei_flutter_plugin_android.iml">
<entry file="file://$PROJECT_DIR$/ios/Classes/Image/AlbumItem.m">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/ios/Classes/Image/AlbumItem.h">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/ios/Classes/Image/ResultManager.m">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/ios/Classes/Image/ResultManager.h">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.h">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="88">
<caret line="4" selection-start-line="4" selection-end-line="4" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.m">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="245">
<caret line="13" column="4" selection-start-line="13" selection-start-column="4" selection-end-line="13" selection-end-column="4" />
</state>
</provider>
</entry>
</component>
</project>
\ No newline at end of file
......@@ -10,9 +10,10 @@
@property(nonatomic)int nowSize;
@property(nonatomic) long resultKey;
@property(nonatomic)long nativeCameraKey;
@property(nonatomic)NSMutableDictionary<NSString*,NSMutableArray<NSMutableDictionary<NSString*,NSObject*>*>*>* finalMap;
@property(strong,nonatomic)NSMutableDictionary<NSString*,NSMutableArray<NSMutableDictionary<NSString*,NSObject*>*>*>* finalMap;
@property(nonatomic,strong) UIImagePickerController *imagePicker;
@property(atomic)Boolean quitPage;
@property(atomic)Boolean execdTask;
@end
@implementation GengmeiFlutterPlugin
......@@ -234,18 +235,27 @@ dispatch_queue_t queue;
}
-(void)scanPhone:(long)resultId{
self.nowSize=0;
self.quitPage=false;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
if (self.finalMap==nil) {
self.finalMap=[NSMutableDictionary dictionary];
}
if ([self.finalMap count]>0&&self.execdTask) {
[self resultImgs:resultId];
return;
}
self.nowSize=0;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
NSLog(@"init!!!");
self.needSize=0;
if (self.finalMap==nil) {
self.finalMap=[NSMutableDictionary dictionary];
}
[self.finalMap removeAllObjects];
[assetCollectionList removeAllObjects];
[self scanPhoneImage];
[self copyImg:resultId];
});
// dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
//
// });
}
-(void)scanPhoneImage{
......@@ -290,6 +300,7 @@ dispatch_queue_t queue;
}
dispatch_async(dispatch_get_main_queue(), ^{
[[ResultManager sharedSingleton] resultSuccess:[NSNumber numberWithLong:resultId] :self.finalMap];
self.execdTask=true;
});
}
......@@ -302,101 +313,64 @@ dispatch_queue_t queue;
NSLog(@"09090909090 %d %d",[assetResult count],self.needSize);
for (int i=0; i<[assetResult count]; i++) {
__block NSString* docName=[item collectionTitle];
PHAsset * assets=[assetResult objectAtIndex:i];
// if (assets.mediaType != PHAssetMediaTypeVideo){
PHImageRequestOptions *imageRequestOption = [[PHImageRequestOptions alloc] init];
imageRequestOption.synchronous =YES;
int picWidth=[assets pixelWidth];
int picHeight=[assets pixelHeight];
float scareSize=1;
// if (picWidth>4000) {
// scareSize=480.0/picWidth;
// }else if(picWidth>3000){
// scareSize=600.0/picWidth;
// }else if (picWidth>1024) {
// scareSize=1;
// }
scareSize=340.0/picWidth;
NSLog(@"SCARESIZE %d",picWidth);
CGSize size=CGSizeMake(picWidth*scareSize, picHeight*scareSize);
imageRequestOption.networkAccessAllowed = YES;
[[PHImageManager defaultManager] requestImageForAsset:assets targetSize:size contentMode:PHImageContentModeDefault options:imageRequestOption resultHandler:^(UIImage * _Nullable result, NSDictionary * _Nullable info) {
// NSLog(@"INITTT___))))00000 %d %d %@",i,[assetResult count],info);
// NSURL * url = [info objectForKey:@"PHImageFileURLKey"];
// UIImage *getImage = [UIImage imageWithContentsOfFile:file];
NSData *data;
if (UIImagePNGRepresentation(result) == nil){
data = UIImageJPEGRepresentation(result, 1);
} else {
data = UIImagePNGRepresentation(result);
NSString * imgName=[assets valueForKey:@"filename"];
if (imgName==nil) {
NSLog(@"NEWWWW!!!!! image name is Null!!! ");
NSString *timeSp = [NSString stringWithFormat:@"%ld", (long)([[NSDate date] timeIntervalSince1970]*100000)];
imgName=[NSString stringWithFormat:@"IMG_%",timeSp];
}
__block NSString *tmpPath=[cacheDirectory stringByAppendingPathComponent:imgName];
if ([fileManager fileExistsAtPath:tmpPath]==YES){
self.nowSize++;
NSMutableDictionary* queryItemDict = [NSMutableDictionary dictionary];
[queryItemDict setObject:tmpPath forKey:@"path"];
NSMutableArray * arr=self.finalMap[docName];
if (arr==nil) {
self.finalMap[docName]=[NSMutableArray array];
[self.finalMap[docName] addObject:queryItemDict];
}else{
[self.finalMap[docName] addObject:queryItemDict];
}
NSString *tmpPath;
NSString* newString1=[NSString stringWithFormat:@"i%@",data];
if ([newString1 length]>5000) {
NSString *temp = [newString1 stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
NSString *text = [temp stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet ]];
NSString *string1=[text substringWithRange:NSMakeRange([text length]-2000,50)];
tmpPath=[cacheDirectory stringByAppendingPathComponent:string1];
if ([fileManager fileExistsAtPath:tmpPath]==YES) {
self.nowSize++;
NSMutableDictionary* queryItemDict = [NSMutableDictionary dictionary];
[queryItemDict setObject:tmpPath forKey:@"path"];
NSMutableArray * arr=self.finalMap[docName];
if (arr==nil) {
self.finalMap[docName]=[NSMutableArray array];
[self.finalMap[docName] addObject:queryItemDict];
}else{
[self.finalMap[docName] addObject:queryItemDict];
}
NSLog(@"SIZEEE %d %d ",self.nowSize,self.needSize);
if (self.nowSize==self.needSize) {
[self resultImgs:resultId];
}
}else{
NSLog(@"File NotExists!!! %@",tmpPath);
if ([[NSFileManager defaultManager] createFileAtPath:tmpPath contents:data attributes:nil]) {
NSLog(@"result %@",tmpPath);
self.nowSize++;
NSMutableDictionary* queryItemDict = [NSMutableDictionary dictionary];
[queryItemDict setObject:tmpPath forKey:@"path"];
NSMutableArray * arr=self.finalMap[docName];
if (arr==nil) {
self.finalMap[docName]=[NSMutableArray array];
[self.finalMap[docName] addObject:queryItemDict];
}else{
[self.finalMap[docName] addObject:queryItemDict];
}
NSLog(@"SIZEEE %d %d ",self.nowSize,self.needSize);
if (self.nowSize==self.needSize) {
[self resultImgs:resultId];
}
} else {
NSLog(@"ERRORRRR ");
self.needSize--;
}
NSLog(@"SIZEEE %d %d ",self.nowSize,self.needSize);
if (self.nowSize==self.needSize) {
[self resultImgs:resultId];
}
}else{
NSLog(@"file NOT EXIT !! ");
PHImageRequestOptions *imageRequestOption = [[PHImageRequestOptions alloc] init];
imageRequestOption.synchronous =YES;
int picWidth=[assets pixelWidth];
int picHeight=[assets pixelHeight];
float scareSize=1;
scareSize=340.0/picWidth;
NSLog(@"SCARESIZE %d",picWidth);
CGSize size=CGSizeMake(picWidth*scareSize, picHeight*scareSize);
imageRequestOption.networkAccessAllowed = YES;
[[PHImageManager defaultManager] requestImageForAsset:assets targetSize:size contentMode:PHImageContentModeDefault options:imageRequestOption resultHandler:^(UIImage * _Nullable result, NSDictionary * _Nullable info) {
// NSLog(@"INITTT___))))00000 %d %d %@",i,[assetResult count],info);
// NSURL * url = [info objectForKey:@"PHImageFileURLKey"];
// UIImage *getImage = [UIImage imageWithContentsOfFile:file];
NSData *data;
if (UIImagePNGRepresentation(result) == nil){
data = UIImageJPEGRepresentation(result, 1);
} else {
data = UIImagePNGRepresentation(result);
}
}else{
NSLog(@"File TOO LOw???? !!! %@",tmpPath);
NSString *guid = [[NSProcessInfo processInfo] globallyUniqueString];
NSString *tmpFile = [NSString stringWithFormat:@"image_picker_%@", guid];
tmpPath= [cacheDirectory stringByAppendingPathComponent:tmpFile];
if ([[NSFileManager defaultManager] createFileAtPath:tmpPath contents:data attributes:nil]) {
NSLog(@"result %@",tmpPath);
self.nowSize++;
NSMutableDictionary* queryItemDict = [NSMutableDictionary dictionary];
[queryItemDict setObject:tmpPath forKey:@"path"];
NSMutableArray * arr=self.finalMap[docName];
if (arr==nil) {
self.finalMap[docName]=[NSMutableArray array];
[self.finalMap[docName] addObject:queryItemDict];
}else{
[self.finalMap[docName] addObject:queryItemDict];
}
NSLog(@"SIZEEE %d %d ",self.nowSize,self.needSize);
if (self.nowSize==self.needSize) {
[self resultImgs:resultId];
......@@ -405,8 +379,8 @@ dispatch_queue_t queue;
NSLog(@"ERRORRRR ");
self.needSize--;
}
}
}];
}];
}
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment