Skip to content
This repository was archived by the owner on Mar 19, 2026. It is now read-only.

Commit e984e43

Browse files
authored
Merge pull request #4 from lowapple/develop
v0.1.6
2 parents 2155e7f + dcee4a0 commit e984e43

6 files changed

Lines changed: 30 additions & 200 deletions

File tree

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
## 0.1.6
2+
* [Fix] Fixed to not build the x86 version. Flutter Android does not generate x86 release.
3+
14
## 0.1.5
25
* [Fix] Fixed Android build .so file merging errors
36
* [Update] Revised installation method and updated related information

README.md

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,15 @@ ImageProcessor::ImageProcessor() : stateCode(NotInitialized) {
3434
![sample](https://user-images.githubusercontent.com/26740046/234154847-d3199f18-b262-45f1-8b9f-4153e11b5f80.png)
3535
3636
## Features
37-
* Plugins utilizing OpenCV
38-
* Perform image comparisons on camera streams (mobile platforms only), image files.
39-
* Compares image features to calculate and return similarity
37+
* [x] Plugins utilizing OpenCV
38+
* [x] Perform image comparisons on camera streams (mobile platforms only), image files.
39+
* [x] Compares image features to calculate and return similarity
40+
41+
## Todo
42+
* [ ] Write plugin test code
43+
* [ ] Reduce the overall size of the plugin
44+
* [x] Do not build x86 [Flutter Building the app for release](https://docs.flutter.dev/deployment/android#build-an-app-bundle)
45+
* [ ] Find a way to avoid importing third-party library sources directly inside the plugin
4046
4147
## Supported platforms
4248
Flutter PixelMatching is available for Android and iOS.
@@ -125,5 +131,9 @@ if (preview != null) {
125131
}
126132
```
127133

134+
## ⚠️ Issue
135+
136+
Currently, for ease of use, the libopencv_java4.so binary file is included inside the plugin. I know it's not recommended, but it's there so you can try it out quickly. If you are using the OpenCV module in another plugin, it may cause conflicts. Please note that.
137+
128138
## License
129139
MIT License. See [LICENSE](LICENSE) for details.

android/build.gradle

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,18 @@ android {
5959
lintOptions {
6060
disable 'InvalidPackage'
6161
}
62-
62+
6363
packagingOptions {
6464
pickFirst '**/libopencv_java4.so'
6565
}
66+
67+
// https://docs.flutter.dev/deployment/android#build-an-app-bundle
68+
splits {
69+
abi {
70+
enable true
71+
reset()
72+
include 'armeabi-v7a', 'arm64-v8a', 'x86_64'
73+
universalApk false
74+
}
75+
}
6676
}

example/pubspec.lock

Lines changed: 2 additions & 194 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
11
# Generated by pub
22
# See https://dart.dev/tools/pub/glossary#lockfile
33
packages:
4-
ansi_styles:
5-
dependency: transitive
6-
description:
7-
name: ansi_styles
8-
sha256: "9c656cc12b3c27b17dd982b2cc5c0cfdfbdabd7bc8f3ae5e8542d9867b47ce8a"
9-
url: "https://pub.dev"
10-
source: hosted
11-
version: "0.3.2+1"
124
archive:
135
dependency: transitive
146
description:
@@ -17,14 +9,6 @@ packages:
179
url: "https://pub.dev"
1810
source: hosted
1911
version: "3.3.7"
20-
args:
21-
dependency: transitive
22-
description:
23-
name: args
24-
sha256: c372bb384f273f0c2a8aaaa226dad84dc27c8519a691b888725dec59518ad53a
25-
url: "https://pub.dev"
26-
source: hosted
27-
version: "2.4.1"
2812
async:
2913
dependency: transitive
3014
description:
@@ -89,30 +73,6 @@ packages:
8973
url: "https://pub.dev"
9074
source: hosted
9175
version: "1.2.1"
92-
charcode:
93-
dependency: transitive
94-
description:
95-
name: charcode
96-
sha256: fb98c0f6d12c920a02ee2d998da788bca066ca5f148492b7085ee23372b12306
97-
url: "https://pub.dev"
98-
source: hosted
99-
version: "1.3.1"
100-
cli_launcher:
101-
dependency: transitive
102-
description:
103-
name: cli_launcher
104-
sha256: "5e7e0282b79e8642edd6510ee468ae2976d847a0a29b3916e85f5fa1bfe24005"
105-
url: "https://pub.dev"
106-
source: hosted
107-
version: "0.3.1"
108-
cli_util:
109-
dependency: transitive
110-
description:
111-
name: cli_util
112-
sha256: "66f86e916d285c1a93d3b79587d94bd71984a66aac4ff74e524cfa7877f1395c"
113-
url: "https://pub.dev"
114-
source: hosted
115-
version: "0.3.5"
11676
clock:
11777
dependency: transitive
11878
description:
@@ -129,14 +89,6 @@ packages:
12989
url: "https://pub.dev"
13090
source: hosted
13191
version: "1.17.0"
132-
conventional_commit:
133-
dependency: transitive
134-
description:
135-
name: conventional_commit
136-
sha256: dec15ad1118f029c618651a4359eb9135d8b88f761aa24e4016d061cd45948f2
137-
url: "https://pub.dev"
138-
source: hosted
139-
version: "0.6.0+1"
14092
convert:
14193
dependency: transitive
14294
description:
@@ -185,14 +137,6 @@ packages:
185137
url: "https://pub.dev"
186138
source: hosted
187139
version: "2.0.1"
188-
file:
189-
dependency: transitive
190-
description:
191-
name: file
192-
sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
193-
url: "https://pub.dev"
194-
source: hosted
195-
version: "6.1.4"
196140
flutter:
197141
dependency: "direct main"
198142
description: flutter
@@ -212,7 +156,7 @@ packages:
212156
path: ".."
213157
relative: true
214158
source: path
215-
version: "0.1.5"
159+
version: "0.1.6"
216160
flutter_plugin_android_lifecycle:
217161
dependency: transitive
218162
description:
@@ -231,30 +175,6 @@ packages:
231175
description: flutter
232176
source: sdk
233177
version: "0.0.0"
234-
flutter_zxing:
235-
dependency: "direct main"
236-
description:
237-
name: flutter_zxing
238-
sha256: b25efe5ac91fe7a51aa8bfea7aca7435285b911b8758b7da38b7f037bad62c35
239-
url: "https://pub.dev"
240-
source: hosted
241-
version: "1.1.2"
242-
glob:
243-
dependency: transitive
244-
description:
245-
name: glob
246-
sha256: "4515b5b6ddb505ebdd242a5f2cc5d22d3d6a80013789debfbda7777f47ea308c"
247-
url: "https://pub.dev"
248-
source: hosted
249-
version: "2.1.1"
250-
graphs:
251-
dependency: transitive
252-
description:
253-
name: graphs
254-
sha256: f9e130f3259f52d26f0cfc0e964513796dafed572fa52e45d2f8d6ca14db39b2
255-
url: "https://pub.dev"
256-
source: hosted
257-
version: "2.2.0"
258178
http:
259179
dependency: transitive
260180
description:
@@ -319,14 +239,6 @@ packages:
319239
url: "https://pub.dev"
320240
source: hosted
321241
version: "2.6.3"
322-
io:
323-
dependency: transitive
324-
description:
325-
name: io
326-
sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e"
327-
url: "https://pub.dev"
328-
source: hosted
329-
version: "1.0.4"
330242
js:
331243
dependency: transitive
332244
description:
@@ -335,14 +247,6 @@ packages:
335247
url: "https://pub.dev"
336248
source: hosted
337249
version: "0.6.5"
338-
json_annotation:
339-
dependency: transitive
340-
description:
341-
name: json_annotation
342-
sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467
343-
url: "https://pub.dev"
344-
source: hosted
345-
version: "4.8.1"
346250
lints:
347251
dependency: transitive
348252
description:
@@ -367,14 +271,6 @@ packages:
367271
url: "https://pub.dev"
368272
source: hosted
369273
version: "0.2.0"
370-
melos:
371-
dependency: transitive
372-
description:
373-
name: melos
374-
sha256: "993ac467e7a36bd832a6cdabbe18a0487c30bc52b5cca14e476a824679ebdce0"
375-
url: "https://pub.dev"
376-
source: hosted
377-
version: "3.0.1"
378274
meta:
379275
dependency: transitive
380276
description:
@@ -383,14 +279,6 @@ packages:
383279
url: "https://pub.dev"
384280
source: hosted
385281
version: "1.8.0"
386-
mustache_template:
387-
dependency: transitive
388-
description:
389-
name: mustache_template
390-
sha256: a46e26f91445bfb0b60519be280555b06792460b27b19e2b19ad5b9740df5d1c
391-
url: "https://pub.dev"
392-
source: hosted
393-
version: "2.0.0"
394282
path:
395283
dependency: transitive
396284
description:
@@ -447,14 +335,6 @@ packages:
447335
url: "https://pub.dev"
448336
source: hosted
449337
version: "5.1.0"
450-
platform:
451-
dependency: transitive
452-
description:
453-
name: platform
454-
sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76"
455-
url: "https://pub.dev"
456-
source: hosted
457-
version: "3.1.0"
458338
plugin_platform_interface:
459339
dependency: transitive
460340
description:
@@ -471,54 +351,6 @@ packages:
471351
url: "https://pub.dev"
472352
source: hosted
473353
version: "3.7.3"
474-
pool:
475-
dependency: transitive
476-
description:
477-
name: pool
478-
sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a"
479-
url: "https://pub.dev"
480-
source: hosted
481-
version: "1.5.1"
482-
process:
483-
dependency: transitive
484-
description:
485-
name: process
486-
sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09"
487-
url: "https://pub.dev"
488-
source: hosted
489-
version: "4.2.4"
490-
prompts:
491-
dependency: transitive
492-
description:
493-
name: prompts
494-
sha256: "3773b845e85a849f01e793c4fc18a45d52d7783b4cb6c0569fad19f9d0a774a1"
495-
url: "https://pub.dev"
496-
source: hosted
497-
version: "2.0.0"
498-
pub_semver:
499-
dependency: transitive
500-
description:
501-
name: pub_semver
502-
sha256: "307de764d305289ff24ad257ad5c5793ce56d04947599ad68b3baa124105fc17"
503-
url: "https://pub.dev"
504-
source: hosted
505-
version: "2.1.3"
506-
pub_updater:
507-
dependency: transitive
508-
description:
509-
name: pub_updater
510-
sha256: "42890302ab2672adf567dc2b20e55b4ecc29d7e19c63b6b98143ab68dd717d3a"
511-
url: "https://pub.dev"
512-
source: hosted
513-
version: "0.2.4"
514-
pubspec:
515-
dependency: transitive
516-
description:
517-
name: pubspec
518-
sha256: f534a50a2b4d48dc3bc0ec147c8bd7c304280fff23b153f3f11803c4d49d927e
519-
url: "https://pub.dev"
520-
source: hosted
521-
version: "2.3.0"
522354
quiver:
523355
dependency: transitive
524356
description:
@@ -596,14 +428,6 @@ packages:
596428
url: "https://pub.dev"
597429
source: hosted
598430
version: "1.3.1"
599-
uri:
600-
dependency: transitive
601-
description:
602-
name: uri
603-
sha256: "889eea21e953187c6099802b7b4cf5219ba8f3518f604a1033064d45b1b8268a"
604-
url: "https://pub.dev"
605-
source: hosted
606-
version: "1.0.0"
607431
vector_math:
608432
dependency: transitive
609433
description:
@@ -620,22 +444,6 @@ packages:
620444
url: "https://pub.dev"
621445
source: hosted
622446
version: "6.2.2"
623-
yaml:
624-
dependency: transitive
625-
description:
626-
name: yaml
627-
sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370"
628-
url: "https://pub.dev"
629-
source: hosted
630-
version: "3.1.1"
631-
yaml_edit:
632-
dependency: transitive
633-
description:
634-
name: yaml_edit
635-
sha256: "1579d4a0340a83cf9e4d580ea51a16329c916973bffd5bd4b45e911b25d46bfd"
636-
url: "https://pub.dev"
637-
source: hosted
638-
version: "2.1.1"
639447
sdks:
640-
dart: ">=2.19.0 <3.0.0"
448+
dart: ">=2.19.0 <4.0.0"
641449
flutter: ">=3.3.0"

example/pubspec.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ dependencies:
3131
camera: ^0.10.3+2
3232
permission_handler: ^10.2.0
3333
image_picker: ^0.8.7+1
34-
flutter_zxing: ^1.1.2
3534

3635
dev_dependencies:
3736
flutter_test:

pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: flutter_pixelmatching
22
description: Module to perform feature matching using OpenCV
3-
version: 0.1.5
3+
version: 0.1.6
44
homepage: https://github.com/lowapple/flutter_pixelmatching
55

66
environment:

0 commit comments

Comments
 (0)