@@ -18,7 +18,9 @@ export class AndroidBleScanAdapter implements BleScanAdapter {
18
18
) . getAdapter ( ) ,
19
19
private sdkVersion = android . os . Build . VERSION . SDK_INT ,
20
20
private activityGetter = ( ) => Application . android . foregroundActivity
21
- ) { }
21
+ ) {
22
+ setupNativeCallback ( ) ;
23
+ }
22
24
23
25
async isReady ( ) : Promise < boolean > {
24
26
const locFeaturesReady = await isEnabled ( ) ;
@@ -117,34 +119,38 @@ function nativeScanModeFrom(mode: BleScanMode): number {
117
119
}
118
120
}
119
121
120
- @NativeClass
121
- class BleScanCallback extends no . nordicsemi . android . support . v18 . scanner
122
- . ScanCallback {
123
- constructor (
124
- private onResults : (
125
- results : java . util . List < no . nordicsemi . android . support . v18 . scanner . ScanResult >
126
- ) => void ,
127
- private onError : ( error : Error ) => void
128
- ) {
129
- super ( ) ;
130
- // @ts -ignore
131
- return global . __native ( this ) ;
132
- }
122
+ let BleScanCallback ;
123
+ function setupNativeCallback ( ) {
124
+ @NativeClass
125
+ class NativeBleScanCallback extends no . nordicsemi . android . support . v18 . scanner
126
+ . ScanCallback {
127
+ constructor (
128
+ private onResults : (
129
+ results : java . util . List < no . nordicsemi . android . support . v18 . scanner . ScanResult >
130
+ ) => void ,
131
+ private onError : ( error : Error ) => void
132
+ ) {
133
+ super ( ) ;
134
+ // @ts -ignore
135
+ return global . __native ( this ) ;
136
+ }
133
137
134
- onScanResult (
135
- _callbackType : number ,
136
- result : no . nordicsemi . android . support . v18 . scanner . ScanResult
137
- ) {
138
- this . onResults ( java . util . Arrays . asList ( [ result ] ) ) ;
139
- }
138
+ onScanResult (
139
+ _callbackType : number ,
140
+ result : no . nordicsemi . android . support . v18 . scanner . ScanResult
141
+ ) {
142
+ this . onResults ( java . util . Arrays . asList ( [ result ] ) ) ;
143
+ }
140
144
141
- onBatchScanResults (
142
- results : java . util . List < no . nordicsemi . android . support . v18 . scanner . ScanResult >
143
- ) {
144
- this . onResults ( results ) ;
145
- }
145
+ onBatchScanResults (
146
+ results : java . util . List < no . nordicsemi . android . support . v18 . scanner . ScanResult >
147
+ ) {
148
+ this . onResults ( results ) ;
149
+ }
146
150
147
- onScanFailed ( errorCode : number ) {
148
- this . onError ( new Error ( `BLE scan failed with error code: ${ errorCode } ` ) ) ;
151
+ onScanFailed ( errorCode : number ) {
152
+ this . onError ( new Error ( `BLE scan failed with error code: ${ errorCode } ` ) ) ;
153
+ }
149
154
}
155
+ BleScanCallback = NativeBleScanCallback ;
150
156
}
0 commit comments