Skip to content

Commit 77085e2

Browse files
Merge pull request #84 from CodingWithTashi/feat/barcode-widget
Feat/barcode widget
2 parents 36f677b + ac50480 commit 77085e2

File tree

12 files changed

+796
-4
lines changed

12 files changed

+796
-4
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 0.2.1
2+
* Added `SimpleBarcodeScanner` widget to scan barcode
3+
* Looking for feedback to improve the use case
4+
15
## 0.2.0
26
* `SimpleBarcodeScannerPage` is now depreciated, use `SimpleBarcodeScanner` instead
37
* Scan barcode with `SimpleBarcodeScanner` `scanBarcode` method

android/src/main/java/com/amolg/flutterbarcodescanner/FlutterBarcodeScannerPlugin.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import androidx.lifecycle.Lifecycle;
1212
import androidx.lifecycle.LifecycleOwner;
1313

14+
import com.amolg.flutterbarcodescanner.widget.BarcodeViewFactory;
1415
import com.google.android.gms.common.api.CommonStatusCodes;
1516
import com.google.android.gms.vision.barcode.Barcode;
1617

@@ -220,6 +221,10 @@ public void run() {
220221
@Override
221222
public void onAttachedToEngine(FlutterPluginBinding binding) {
222223
pluginBinding = binding;
224+
binding.getPlatformViewRegistry().registerViewFactory(
225+
"plugins.codingwithtashi/barcode_scanner_view",
226+
new BarcodeViewFactory(binding.getBinaryMessenger())
227+
);
223228
}
224229

225230
@Override
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package com.amolg.flutterbarcodescanner.widget;
2+
3+
import android.content.Context;
4+
import io.flutter.plugin.common.BinaryMessenger;
5+
import io.flutter.plugin.platform.PlatformView;
6+
import io.flutter.plugin.platform.PlatformViewFactory;
7+
import io.flutter.plugin.common.StandardMessageCodec;
8+
9+
public class BarcodeViewFactory extends PlatformViewFactory {
10+
private final BinaryMessenger messenger;
11+
12+
public BarcodeViewFactory(BinaryMessenger messenger) {
13+
super(StandardMessageCodec.INSTANCE);
14+
this.messenger = messenger;
15+
}
16+
17+
@Override
18+
public PlatformView create(Context context, int id, Object creationParams) {
19+
return new FlutterBarcodeView(context, messenger, id,creationParams);
20+
}
21+
}

0 commit comments

Comments
 (0)