Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
F
flutter_plugin
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
林生雨
flutter_plugin
Commits
d1da53f0
Commit
d1da53f0
authored
Nov 14, 2019
by
林生雨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
commit
parent
c4e2b084
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
185 additions
and
188 deletions
+185
-188
workspace.xml
.idea/workspace.xml
+97
-80
GengmeiFlutterPlugin.kt
...om/example/gengmei_flutter_plugin/GengmeiFlutterPlugin.kt
+4
-0
flutter_export_environment.sh
example/ios/Flutter/flutter_export_environment.sh
+2
-3
Podfile.lock
example/ios/Podfile.lock
+2
-2
pubspec.lock
example/pubspec.lock
+1
-50
gengmei_flutter_plugin.iml
gengmei_flutter_plugin.iml
+1
-1
GengmeiFlutterPlugin.m
ios/Classes/GengmeiFlutterPlugin.m
+61
-45
ScanImagePlugn.dart
lib/ScanImagePlugn.dart
+6
-0
gengmei_flutter_plugin.dart
lib/gengmei_flutter_plugin.dart
+4
-0
pubspec.lock
pubspec.lock
+7
-7
No files found.
.idea/workspace.xml
View file @
d1da53f0
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"AndroidLogFilters"
>
<option
name=
"TOOL_WINDOW_LOG_LEVEL"
value=
"
verbose
"
/>
<option
name=
"TOOL_WINDOW_LOG_LEVEL"
value=
"
error
"
/>
<option
name=
"TOOL_WINDOW_CONFIGURED_FILTER"
value=
"Show only selected application"
/>
</component>
<component
name=
"ChangeListManager"
>
...
...
@@ -9,9 +9,21 @@
<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/.idea/workspace.xml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/.idea/workspace.xml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/example/ios/Flutter/flutter_export_environment.sh"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/example/ios/Flutter/flutter_export_environment.sh"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/example/ios/Podfile.lock"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/example/ios/Podfile.lock"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/example/pubspec.lock"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/example/pubspec.lock"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/gengmei_flutter_plugin.iml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/gengmei_flutter_plugin.iml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/ios/Classes/GengmeiFlutterPlugin.m"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/ios/Classes/GengmeiFlutterPlugin.m"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/lib/ScanImagePlugn.dart"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/lib/ScanImagePlugn.dart"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/lib/gengmei_flutter_plugin.dart"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/lib/gengmei_flutter_plugin.dart"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/pubspec.lock"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/.symlinks/plugins/gengmei_flutter_plugin/pubspec.lock"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/Flutter/flutter_export_environment.sh"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/Flutter/flutter_export_environment.sh"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/ios/Podfile.lock"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/ios/Podfile.lock"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/example/pubspec.lock"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/example/pubspec.lock"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/gengmei_flutter_plugin.iml"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/gengmei_flutter_plugin.iml"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.m"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/ios/Classes/GengmeiFlutterPlugin.m"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/lib/ScanImagePlugn.dart"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/lib/ScanImagePlugn.dart"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/lib/gengmei_flutter_plugin.dart"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/lib/gengmei_flutter_plugin.dart"
afterDir=
"false"
/>
<change
beforePath=
"$PROJECT_DIR$/pubspec.lock"
beforeDir=
"false"
afterPath=
"$PROJECT_DIR$/pubspec.lock"
afterDir=
"false"
/>
</list>
<ignored
path=
"$PROJECT_DIR$/.dart_tool/"
/>
<ignored
path=
"$PROJECT_DIR$/.idea/"
/>
...
...
@@ -32,12 +44,10 @@
<component
name=
"FileEditorManager"
>
<leaf
SIDE_TABS_SIZE_LIMIT_KEY=
"300"
>
<file
pinned=
"false"
current-in-tab=
"$ENABLE_FLUTTER_DESKTOP$"
>
<entry
file=
"file://$PROJECT_DIR$/
example/lib/AlbumModel/page/album/AlbumModel.dar
t"
>
<entry
file=
"file://$PROJECT_DIR$/
android/src/main/java/com/example/gengmei_flutter_plugin/GengmeiFlutterPlugin.k
t"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state>
<folding>
<element
signature=
"e#46#66#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
<state
relative-caret-position=
"40"
>
<caret
line=
"133"
column=
"38"
selection-start-line=
"133"
selection-start-column=
"28"
selection-end-line=
"133"
selection-end-column=
"38"
/>
</state>
</provider>
</entry>
...
...
@@ -52,19 +62,13 @@
</entry>
</file>
<file
pinned=
"false"
current-in-tab=
"false"
>
<entry
file=
"file://$
USER_HOME$/Downloads/flutter/packages/flutter/lib/src/widgets/image
.dart"
>
<entry
file=
"file://$
PROJECT_DIR$/example/lib/AlbumModel/repository/AlbumRepository
.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"6556"
>
<caret
line=
"326"
column=
"8"
selection-start-line=
"326"
selection-start-column=
"8"
selection-end-line=
"326"
selection-end-column=
"8"
/>
</state>
</provider>
</entry>
</file>
<file
pinned=
"false"
current-in-tab=
"false"
>
<entry
file=
"file://$USER_HOME$/Downloads/flutter/bin/cache/dart-sdk/lib/async/zone.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"24838"
>
<caret
line=
"1131"
column=
"37"
selection-start-line=
"1131"
selection-start-column=
"37"
selection-end-line=
"1131"
selection-end-column=
"37"
/>
<state
relative-caret-position=
"396"
>
<caret
line=
"23"
column=
"8"
selection-start-line=
"23"
selection-start-column=
"8"
selection-end-line=
"23"
selection-end-column=
"8"
/>
<folding>
<element
signature=
"e#46#106#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
</state>
</provider>
</entry>
...
...
@@ -93,8 +97,8 @@
<file
pinned=
"false"
current-in-tab=
"false"
>
<entry
file=
"file://$PROJECT_DIR$/lib/ScanImagePlugn.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"
1100
"
>
<caret
line=
"
53"
column=
"20"
selection-start-line=
"53"
selection-start-column=
"20"
selection-end-line=
"53"
selection-end-column=
"20
"
/>
<state
relative-caret-position=
"
748
"
>
<caret
line=
"
38"
column=
"3"
selection-start-line=
"38"
selection-start-column=
"3"
selection-end-line=
"38"
selection-end-column=
"3
"
/>
<folding>
<element
signature=
"e#45#86#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
...
...
@@ -105,8 +109,8 @@
<file
pinned=
"false"
current-in-tab=
"false"
>
<entry
file=
"file://$USER_HOME$/Downloads/flutter/packages/flutter/lib/src/services/platform_channel.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"6
512
"
>
<caret
line=
"30
6"
column=
"12"
selection-start-line=
"306"
selection-start-column=
"12"
selection-end-line=
"306
"
selection-end-column=
"12"
/>
<state
relative-caret-position=
"6
424
"
>
<caret
line=
"30
1"
column=
"12"
selection-start-line=
"301"
selection-start-column=
"12"
selection-end-line=
"301
"
selection-end-column=
"12"
/>
</state>
</provider>
</entry>
...
...
@@ -114,8 +118,8 @@
<file
pinned=
"false"
current-in-tab=
"false"
>
<entry
file=
"file://$PROJECT_DIR$/lib/gengmei_flutter_plugin.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"
510
"
>
<caret
line=
"3
2"
selection-start-line=
"32"
selection-end-line=
"32
"
/>
<state
relative-caret-position=
"
682
"
>
<caret
line=
"3
7"
column=
"57"
selection-start-line=
"37"
selection-start-column=
"57"
selection-end-line=
"37"
selection-end-column=
"57
"
/>
<folding>
<element
signature=
"e#0#20#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
...
...
@@ -126,7 +130,7 @@
<file
pinned=
"false"
current-in-tab=
"false"
>
<entry
file=
"file://$PROJECT_DIR$/example/lib/AlbumModel/page/album/AlbumPage.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"
4048
"
>
<state
relative-caret-position=
"
3916
"
>
<caret
line=
"187"
column=
"18"
selection-start-line=
"187"
selection-start-column=
"18"
selection-end-line=
"187"
selection-end-column=
"18"
/>
<folding>
<element
signature=
"e#45#62#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
...
...
@@ -206,10 +210,10 @@
</option>
</component>
<component
name=
"ProjectFrameBounds"
>
<option
name=
"x"
value=
"
116
"
/>
<option
name=
"y"
value=
"2
5
"
/>
<option
name=
"x"
value=
"
-83
"
/>
<option
name=
"y"
value=
"2
4
"
/>
<option
name=
"width"
value=
"1440"
/>
<option
name=
"height"
value=
"81
1
"
/>
<option
name=
"height"
value=
"81
4
"
/>
</component>
<component
name=
"ProjectLevelVcsManager"
settingsEditedManually=
"$ENABLE_FLUTTER_DESKTOP$"
/>
<component
name=
"ProjectView"
>
...
...
@@ -218,7 +222,6 @@
</navigator>
<panes>
<pane
id=
"Scope"
/>
<pane
id=
"PackagesPane"
/>
<pane
id=
"AndroidView"
/>
<pane
id=
"ProjectPane"
>
<subPane>
...
...
@@ -229,23 +232,38 @@
</path>
<path>
<item
name=
"gengmei_flutter_plugin"
type=
"b2602c69:ProjectViewProjectNode"
/>
<item
name=
"External Libraries"
type=
"cb654da1:ExternalLibrariesNode"
/>
<item
name=
"gengmei_flutter_plugin"
type=
"462c0819:PsiDirectoryNode"
/>
<item
name=
"android"
type=
"462c0819:PsiDirectoryNode"
/>
</path>
<path>
<item
name=
"gengmei_flutter_plugin"
type=
"b2602c69:ProjectViewProjectNode"
/>
<item
name=
"External Libraries"
type=
"cb654da1:ExternalLibrariesNode"
/>
<item
name=
"Dart SDK"
type=
"3dd79eb:DartTreeStructureProvider$1"
/>
<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=
"android"
type=
"462c0819:PsiDirectoryNode"
/>
<item
name=
"main"
type=
"462c0819:PsiDirectoryNode"
/>
<item
name=
"gengmei_flutter_plugin"
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"
/>
<item
name=
"res"
type=
"462c0819:PsiDirectoryNode"
/>
</path>
<path>
<item
name=
"gengmei_flutter_plugin"
type=
"b2602c69:ProjectViewProjectNode"
/>
<item
name=
"External Libraries"
type=
"cb654da1:ExternalLibrariesNode"
/>
<item
name=
"Dart SDK"
type=
"3dd79eb:DartTreeStructureProvider$1"
/>
<item
name=
"async"
type=
"e6ad2126:DartTreeStructureProvider$DartSdkOrLibraryRootNode"
/>
</path>
</expand>
<select
/>
</subPane>
</pane>
<pane
id=
"PackagesPane"
/>
</panes>
</component>
<component
name=
"PropertiesComponent"
>
...
...
@@ -292,8 +310,7 @@
<servers
/>
</component>
<component
name=
"ToolWindowManager"
>
<frame
x=
"116"
y=
"25"
width=
"1440"
height=
"811"
extended-state=
"0"
/>
<editor
active=
"$ENABLE_FLUTTER_DESKTOP$"
/>
<frame
x=
"-83"
y=
"24"
width=
"1440"
height=
"814"
extended-state=
"0"
/>
<layout>
<window_info
active=
"$ENABLE_FLUTTER_DESKTOP$"
content_ui=
"combo"
id=
"Project"
order=
"0"
visible=
"$ENABLE_FLUTTER_DESKTOP$"
weight=
"0.19742489"
/>
<window_info
id=
"Captures"
order=
"1"
side_tool=
"$ENABLE_FLUTTER_DESKTOP$"
/>
...
...
@@ -305,12 +322,12 @@
<window_info
id=
"Capture Tool"
order=
"7"
/>
<window_info
id=
"Favorites"
order=
"8"
side_tool=
"$ENABLE_FLUTTER_DESKTOP$"
/>
<window_info
anchor=
"bottom"
id=
"Dart Analysis"
order=
"0"
weight=
"0.32963988"
/>
<window_info
anchor=
"bottom"
id=
"Run"
order=
"1"
weight=
"0.
37361112
"
/>
<window_info
anchor=
"bottom"
id=
"Run"
order=
"1"
weight=
"0.
5006954
"
/>
<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.68194443
"
/>
<window_info
anchor=
"bottom"
id=
"Logcat"
order=
"4"
visible=
"$ENABLE_FLUTTER_DESKTOP$"
weight=
"0.077562325
"
/>
<window_info
anchor=
"bottom"
id=
"Debug"
order=
"5"
/>
<window_info
anchor=
"bottom"
id=
"Terminal"
order=
"6"
weight=
"0.
5611111
"
/>
<window_info
anchor=
"bottom"
id=
"Terminal"
order=
"6"
weight=
"0.
3480663
"
/>
<window_info
anchor=
"bottom"
id=
"Event Log"
order=
"7"
side_tool=
"$ENABLE_FLUTTER_DESKTOP$"
/>
<window_info
anchor=
"bottom"
id=
"Flutter Performance"
order=
"8"
side_tool=
"$ENABLE_FLUTTER_DESKTOP$"
/>
<window_info
anchor=
"bottom"
id=
"Version Control"
order=
"9"
/>
...
...
@@ -459,13 +476,6 @@
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/android/src/main/java/com/example/gengmei_flutter_plugin/GengmeiFlutterPlugin.kt"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"5258"
>
<caret
line=
"267"
column=
"13"
selection-start-line=
"267"
selection-start-column=
"13"
selection-end-line=
"267"
selection-end-column=
"13"
/>
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/pubspec.lock"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
/>
</entry>
...
...
@@ -489,16 +499,6 @@
<entry
file=
"file://$PROJECT_DIR$/ios/Classes/Image/ResultManager.m"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
/>
</entry>
<entry
file=
"file://$PROJECT_DIR$/example/lib/AlbumModel/repository/AlbumRepository.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"251"
>
<caret
line=
"26"
column=
"25"
selection-start-line=
"26"
selection-start-column=
"25"
selection-end-line=
"29"
selection-end-column=
"9"
/>
<folding>
<element
signature=
"e#46#106#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/example/lib/AlbumModel/Anim.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"-1390"
/>
...
...
@@ -545,17 +545,19 @@
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/
lib/SharedPlugin
.dart"
>
<entry
file=
"file://$PROJECT_DIR$/
example/lib/AlbumModel/page/album/AlbumModel
.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"330"
>
<caret
line=
"18"
column=
"39"
selection-start-line=
"18"
selection-start-column=
"28"
selection-end-line=
"18"
selection-end-column=
"39"
/>
<state>
<folding>
<element
signature=
"e#46#66#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
</state>
</provider>
</entry>
<entry
file=
"file://$USER_HOME$/Downloads/flutter/packages/flutter/lib/src/widgets/image.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"
6556
"
>
<caret
line=
"
326"
column=
"8"
selection-start-line=
"326"
selection-start-column=
"8"
selection-end-line=
"326
"
selection-end-column=
"8"
/>
<state
relative-caret-position=
"
5588
"
>
<caret
line=
"
282"
column=
"8"
selection-start-line=
"282"
selection-start-column=
"8"
selection-end-line=
"282
"
selection-end-column=
"8"
/>
</state>
</provider>
</entry>
...
...
@@ -566,6 +568,30 @@
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/android/src/main/java/com/example/gengmei_flutter_plugin/GengmeiFlutterPlugin.kt"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"40"
>
<caret
line=
"133"
column=
"38"
selection-start-line=
"133"
selection-start-column=
"28"
selection-end-line=
"133"
selection-end-column=
"38"
/>
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/lib/SharedPlugin.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"330"
>
<caret
line=
"18"
column=
"39"
selection-start-line=
"18"
selection-start-column=
"28"
selection-end-line=
"18"
selection-end-column=
"39"
/>
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/example/lib/AlbumModel/repository/AlbumRepository.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"396"
>
<caret
line=
"23"
column=
"8"
selection-start-line=
"23"
selection-start-column=
"8"
selection-end-line=
"23"
selection-end-column=
"8"
/>
<folding>
<element
signature=
"e#46#106#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/example/lib/main.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"3806"
>
...
...
@@ -585,8 +611,8 @@
</entry>
<entry
file=
"file://$PROJECT_DIR$/lib/ScanImagePlugn.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"
1100
"
>
<caret
line=
"
53"
column=
"20"
selection-start-line=
"53"
selection-start-column=
"20"
selection-end-line=
"53"
selection-end-column=
"20
"
/>
<state
relative-caret-position=
"
748
"
>
<caret
line=
"
38"
column=
"3"
selection-start-line=
"38"
selection-start-column=
"3"
selection-end-line=
"38"
selection-end-column=
"3
"
/>
<folding>
<element
signature=
"e#45#86#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
...
...
@@ -595,36 +621,27 @@
</entry>
<entry
file=
"file://$USER_HOME$/Downloads/flutter/packages/flutter/lib/src/services/platform_channel.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"6512"
>
<caret
line=
"306"
column=
"12"
selection-start-line=
"306"
selection-start-column=
"12"
selection-end-line=
"306"
selection-end-column=
"12"
/>
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/example/lib/AlbumModel/page/album/AlbumPage.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"4048"
>
<caret
line=
"187"
column=
"18"
selection-start-line=
"187"
selection-start-column=
"18"
selection-end-line=
"187"
selection-end-column=
"18"
/>
<folding>
<element
signature=
"e#45#62#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
<state
relative-caret-position=
"6424"
>
<caret
line=
"301"
column=
"12"
selection-start-line=
"301"
selection-start-column=
"12"
selection-end-line=
"301"
selection-end-column=
"12"
/>
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/lib/gengmei_flutter_plugin.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state
relative-caret-position=
"
510
"
>
<caret
line=
"3
2"
selection-start-line=
"32"
selection-end-line=
"32
"
/>
<state
relative-caret-position=
"
682
"
>
<caret
line=
"3
7"
column=
"57"
selection-start-line=
"37"
selection-start-column=
"57"
selection-end-line=
"37"
selection-end-column=
"57
"
/>
<folding>
<element
signature=
"e#0#20#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
</state>
</provider>
</entry>
<entry
file=
"file://$PROJECT_DIR$/example/lib/AlbumModel/page/album/Album
Model
.dart"
>
<entry
file=
"file://$PROJECT_DIR$/example/lib/AlbumModel/page/album/Album
Page
.dart"
>
<provider
selected=
"$ENABLE_FLUTTER_DESKTOP$"
editor-type-id=
"text-editor"
>
<state>
<state
relative-caret-position=
"3916"
>
<caret
line=
"187"
column=
"18"
selection-start-line=
"187"
selection-start-column=
"18"
selection-end-line=
"187"
selection-end-column=
"18"
/>
<folding>
<element
signature=
"e#4
6#66
#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
<element
signature=
"e#4
5#62
#0"
expanded=
"$ENABLE_FLUTTER_DESKTOP$"
/>
</folding>
</state>
</provider>
...
...
android/src/main/java/com/example/gengmei_flutter_plugin/GengmeiFlutterPlugin.kt
View file @
d1da53f0
...
...
@@ -132,6 +132,7 @@ class GengmeiFlutterPlugin : MethodCallHandler {
when
(
requestCode
)
{
CAMERA_REQUEST_CODE
->
{
if
(
resultCode
==
RESULT_OK
)
{
android
.
util
.
Log
.
e
(
"lsy"
,
" RESULT OKKKKK "
)
if
(
nativeImage
!=
null
&&
nativeImage
!!
.
exists
())
{
ImageRespository
.
getInstance
().
scareImg
(
nativeImage
!!
.
absolutePath
).
subscribe
({
val
map
=
HashMap
<
String
,
Any
>()
...
...
@@ -139,6 +140,8 @@ class GengmeiFlutterPlugin : MethodCallHandler {
map
.
put
(
"path"
,
it
.
second
)
map
.
put
(
"isVideo"
,
"F"
)
map
.
put
(
"folderName"
,
"GengmeiAlbum"
)
android
.
util
.
Log
.
e
(
"lsy"
,
" RESULT MAPPP "
)
// try {
// MediaStore.Images.Media.insertImage(resign.context().applicationContext.getContentResolver(),
// nativeImage!!.absolutePath, getFileName(nativeImage!!.absolutePath), null);
...
...
@@ -212,6 +215,7 @@ class GengmeiFlutterPlugin : MethodCallHandler {
ScanImage
(
result
)
}
NATIVE_CAMERA
->
{
gotoNativeCameraKey
=
resultKey
;
gotoNativeCamera
(
call
.
argument
<
String
>(
"authority"
)
!!
)
}
SAVE_STRING_SHARED
->
{
...
...
example/ios/Flutter/flutter_export_environment.sh
View file @
d1da53f0
...
...
@@ -2,9 +2,8 @@
# This is a generated file; do not edit or check into version control.
export
"FLUTTER_ROOT=/Users/apple/Downloads/flutter"
export
"FLUTTER_APPLICATION_PATH=/Users/apple/lsy/gengmei_flutter_plugin/example"
export
"FLUTTER_TARGET=lib/main.dart"
export
"FLUTTER_TARGET=
/Users/apple/lsy/gengmei_flutter_plugin/example/
lib/main.dart"
export
"FLUTTER_BUILD_DIR=build"
export
"SYMROOT=
${
SOURCE_ROOT
}
/../build/ios"
export
"FLUTTER_FRAMEWORK_DIR=/Users/apple/Downloads/flutter/bin/cache/artifacts/engine/ios"
export
"FLUTTER_BUILD_NAME=1.0.0"
export
"FLUTTER_BUILD_NUMBER=1"
export
"TRACK_WIDGET_CREATION=true"
example/ios/Podfile.lock
View file @
d1da53f0
...
...
@@ -14,9 +14,9 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/gengmei_flutter_plugin/ios"
SPEC CHECKSUMS:
Flutter:
58dd7d1b27887414a370fcccb9e645c08ffd7a6a
Flutter:
0e3d915762c693b495b44d77113d4970485de6ec
gengmei_flutter_plugin: 9461e8644c06c4a0e38292ddcca1cc55e6ac6156
PODFILE CHECKSUM: 7fb83752f59ead6285236625b82473f90b1cb932
COCOAPODS: 1.
7
.4
COCOAPODS: 1.
8
.4
example/pubspec.lock
View file @
d1da53f0
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
archive:
dependency: transitive
description:
name: archive
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.0.10"
args:
dependency: transitive
description:
name: args
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.5.2"
async:
dependency: transitive
description:
...
...
@@ -43,20 +29,6 @@ packages:
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.14.11"
convert:
dependency: transitive
description:
name: convert
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.1"
crypto:
dependency: transitive
description:
name: crypto
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.3"
cupertino_icons:
dependency: "direct main"
description:
...
...
@@ -81,13 +53,6 @@ packages:
relative: true
source: path
version: "0.0.735"
image:
dependency: transitive
description:
name: image
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.4"
matcher:
dependency: transitive
description:
...
...
@@ -116,13 +81,6 @@ packages:
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.8.0+1"
petitparser:
dependency: transitive
description:
name: petitparser
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.4.0"
quiver:
dependency: transitive
description:
...
...
@@ -198,12 +156,5 @@ packages:
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.0.8"
xml:
dependency: transitive
description:
name: xml
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.5.0"
sdks:
dart: ">=2.
4.0
<3.0.0"
dart: ">=2.
2.2
<3.0.0"
gengmei_flutter_plugin.iml
View file @
d1da53f0
<?xml version="1.0" encoding="UTF-8"?>
<module
type=
"JAVA_MODULE"
version=
"4"
>
<component
name=
"NewModuleRootManager"
inherit-compiler-output=
"
true
"
>
<component
name=
"NewModuleRootManager"
inherit-compiler-output=
"
$ENABLE_FLUTTER_DESKTOP$
"
>
<exclude-output
/>
<content
url=
"file://$MODULE_DIR$"
>
<sourceFolder
url=
"file://$MODULE_DIR$/lib"
isTestSource=
"false"
/>
...
...
ios/Classes/GengmeiFlutterPlugin.m
View file @
d1da53f0
...
...
@@ -383,45 +383,7 @@ NSString *cacheDirectory;
[
video
setImagePre
:
assets
];
[[
ResultManager
sharedSingleton
]
resultSuccess
:[
NSNumber
numberWithLong
:
resultTemp
]
:
@YES
];
// if([fileManager fileExistsAtPath:tempTake]){
// NSMutableDictionary *dict=[[NSMutableDictionary alloc] init];
// [dict setObject:path forKey:@"path"];
// [dict setObject:tempTake forKey:@"realImagePath"];
// [[ResultManager sharedSingleton] resultSuccess:[NSNumber numberWithLong:resultTemp] :dict];
// }else{
// dispatch_async(queue, ^{
// CFAbsoluteTime start=CFAbsoluteTimeGetCurrent();
// int picWidth=[assets pixelWidth];
// int picHeight=[assets pixelHeight];
// float tempScareSize=1;
// float limit=1024.0;
// float max=MAX(picWidth, picHeight);
// if(max>limit){
// tempScareSize=limit/max;
// }
// CGSize temp=CGSizeMake(picWidth*tempScareSize, picHeight*tempScareSize);
// __block bool isResult=false;
// [[PHImageManager defaultManager] requestImageForAsset:assets targetSize:temp contentMode:PHImageContentModeDefault options:imageRequestOption resultHandler:^(UIImage * _Nullable result, NSDictionary * _Nullable info) {
// if(isResult){
// return ;
// }
// isResult=true;
// @autoreleasepool{
// NSData *data = UIImageJPEGRepresentation(result, 0.7) ;
// [data writeToFile:tempTake atomically:YES];
// // result=nil;
// // data=nil;
// }
// NSMutableDictionary *dict=[[NSMutableDictionary alloc] init];
// [dict setObject:path forKey:@"path"];
// [dict setObject:tempTake forKey:@"realImagePath"];
// dispatch_async(dispatch_get_main_queue(), ^{
// NSLog(@"压缩预览图片耗时:%f ms Temp路径%@",(CFAbsoluteTimeGetCurrent()-start)*1000,tempTake);
// [[ResultManager sharedSingleton] resultSuccess:[NSNumber numberWithLong:resultTemp] :dict];
// });
// }];
// });
// }
}
else
if
([[
self
.
takePhotoMap
allKeys
]
containsObject
:
path
]){
MyPreviewController
*
video
=
[[
MyPreviewController
alloc
]
init
];
[
viewController
presentViewController
:
video
animated
:
YES
completion
:
nil
];
...
...
@@ -434,6 +396,60 @@ NSString *cacheDirectory;
}
else
{
[[
ResultManager
sharedSingleton
]
resultSuccess
:[
NSNumber
numberWithLong
:
resultTemp
]
:
nil
];
}
}
else
if
([
@"scare_image"
isEqualToString
:
call
.
method
]
){
long
resultTemp
=
self
.
resultKey
;
NSMutableDictionary
*
dict
=
call
.
arguments
;
int
size
=
dict
[
@"size"
];
PHImageRequestOptions
*
imageRequestOption
=
[[
PHImageRequestOptions
alloc
]
init
];
imageRequestOption
.
synchronous
=
NO
;
imageRequestOption
.
networkAccessAllowed
=
YES
;
imageRequestOption
.
deliveryMode
=
PHImageRequestOptionsDeliveryModeHighQualityFormat
;
imageRequestOption
.
resizeMode
=
PHImageRequestOptionsResizeModeFast
;
imageRequestOption
.
version
=
PHImageRequestOptionsVersionUnadjusted
;
NSString
*
tempPath
=
NSTemporaryDirectory
();
NSFileManager
*
fileManager
=
[
NSFileManager
defaultManager
];
NSString
*
path
=
dict
[
@"path"
];
if
(
path
!=
nil
){
if
([[
self
.
scanMap
allKeys
]
containsObject
:
path
]){
NSString
*
name
=
[
path
lastPathComponent
];
NSString
*
tempTake
=
[
tempPath
stringByAppendingPathComponent
:[
NSString
stringWithFormat
:
@"%@%@"
,
name
,
@"_preview"
]];
PHAsset
*
assets
=
self
.
scanMap
[
path
];
if
([
fileManager
fileExistsAtPath
:
tempTake
]){
[[
ResultManager
sharedSingleton
]
resultSuccess
:[
NSNumber
numberWithLong
:
resultTemp
]
:
tempTake
];
}
else
{
dispatch_async
(
queue
,
^
{
CFAbsoluteTime
start
=
CFAbsoluteTimeGetCurrent
();
int
picWidth
=
[
assets
pixelWidth
];
int
picHeight
=
[
assets
pixelHeight
];
float
tempScareSize
=
1
;
float
limit
=
size
+
0
.
0
;
float
max
=
MAX
(
picWidth
,
picHeight
);
if
(
max
>
limit
){
tempScareSize
=
limit
/
max
;
}
CGSize
temp
=
CGSizeMake
(
picWidth
*
tempScareSize
,
picHeight
*
tempScareSize
);
__block
bool
isResult
=
false
;
[[
PHImageManager
defaultManager
]
requestImageForAsset
:
assets
targetSize
:
temp
contentMode
:
PHImageContentModeDefault
options
:
imageRequestOption
resultHandler
:^
(
UIImage
*
_Nullable
result
,
NSDictionary
*
_Nullable
info
)
{
if
(
isResult
){
return
;
}
isResult
=
true
;
@autoreleasepool
{
NSData
*
data
=
UIImageJPEGRepresentation
(
result
,
1
)
;
[
data
writeToFile
:
tempTake
atomically
:
YES
];
// result=nil;
// data=nil;
}
NSLog
(
@"压缩预览图片耗时:%f ms Temp路径%@"
,(
CFAbsoluteTimeGetCurrent
()
-
start
)
*
1000
,
tempTake
);
[[
ResultManager
sharedSingleton
]
resultSuccess
:[
NSNumber
numberWithLong
:
resultTemp
]
:
tempTake
];
}];
});
}
}
else
if
([[
self
.
takePhotoMap
allKeys
]
containsObject
:
path
]){
[[
ResultManager
sharedSingleton
]
resultSuccess
:[
NSNumber
numberWithLong
:
resultTemp
]
:
self
.
takePhotoMap
[
path
]];
}
}
}
else
if
([
@"play_album_video"
isEqualToString
:
call
.
method
]
){
long
resultTemp
=
self
.
resultKey
;
NSString
*
path
=
call
.
arguments
;
...
...
@@ -923,12 +939,12 @@ CFAbsoluteTime startTime;
-
(
void
)
popWindow
:
(
NSString
*
)
str
{
UIAlertController
*
alertController
=
[
UIAlertController
alertControllerWithTitle
:
@"提示"
message
:
str
preferredStyle
:
UIAlertControllerStyleAlert
];
UIAlertAction
*
okAction
=
[
UIAlertAction
actionWithTitle
:
@"确定"
style
:
UIAlertActionStyleDefault
handler
:^
(
UIAlertAction
*
_Nonnull
action
)
{
NSLog
(
@"确定"
);
}];
[
alertController
addAction
:
okAction
];
[
viewController
presentViewController
:
alertController
animated
:
YES
completion
:
nil
];
UIAlertAction
*
okAction
=
[
UIAlertAction
actionWithTitle
:
@"确定"
style
:
UIAlertActionStyleDefault
handler
:^
(
UIAlertAction
*
_Nonnull
action
)
{
NSLog
(
@"确定"
);
}];
[
alertController
addAction
:
okAction
];
[
viewController
presentViewController
:
alertController
animated
:
YES
completion
:
nil
];
}
//-(void)execRealImg:(long)resultId{
...
...
lib/ScanImagePlugn.dart
View file @
d1da53f0
...
...
@@ -38,6 +38,12 @@ class ScanImagePlugn {
.
invokeMethod
(
"native_camera"
,
{
"authority"
:
authority
});
}
static
Future
<
String
>
scareImg
(
MethodChannel
channel
,
String
path
,
int
scare
)
async
{
return
await
channel
.
invokeMethod
(
"scare_image"
,
{
"path"
:
path
,
"size"
:
scare
});
}
static
Future
<
bool
>
quitPage
(
MethodChannel
channel
)
async
{
return
await
channel
.
invokeMethod
(
"quit_page"
);
}
...
...
lib/gengmei_flutter_plugin.dart
View file @
d1da53f0
...
...
@@ -19,6 +19,10 @@ class GengmeiFlutterPlugin {
return
await
ScanImagePlugn
.
scanImages
(
_channel
);
}
static
Future
<
String
>
scareImg
(
String
path
,
int
scare
)
async
{
return
await
ScanImagePlugn
.
scareImg
(
_channel
,
path
,
scare
);
}
static
Future
<
Map
>
nativeCamera
(
String
authority
)
async
{
return
await
ScanImagePlugn
.
nativeCamera
(
_channel
,
authority
);
}
...
...
pubspec.lock
View file @
d1da53f0
...
...
@@ -7,14 +7,14 @@ packages:
name: async
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.
2
.0"
version: "2.
3
.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.
4
"
version: "1.0.
5
"
charcode:
dependency: transitive
description:
...
...
@@ -52,28 +52,28 @@ packages:
name: meta
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.
6
"
version: "1.1.
7
"
path:
dependency: transitive
description:
name: path
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.6.
2
"
version: "1.6.
4
"
pedantic:
dependency: transitive
description:
name: pedantic
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.
7.0
"
version: "1.
8.0+1
"
quiver:
dependency: transitive
description:
name: quiver
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.0.
3
"
version: "2.0.
5
"
sky_engine:
dependency: transitive
description: flutter
...
...
@@ -106,7 +106,7 @@ packages:
name: string_scanner
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.
4
"
version: "1.0.
5
"
term_glyph:
dependency: transitive
description:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment