@@ -97,43 +97,42 @@ export class NetInfoTurboModule extends TurboModule {
97
97
// 订阅网络可用事件
98
98
this . netConnection . on ( 'netAvailable' , ( data ) => {
99
99
Logger . info ( 'netAvailable,' + JSON . stringify ( data ) ) ;
100
- if ( this . numberOfListeners > 0 ) {
101
- this . createConnectionEvent ( )
102
- . then ( ( data ) => {
103
- Logger . info ( 'netInfo.networkStatusDidChange,netAvailable' + this . numberOfListeners )
104
- this . ctx . rnInstance . emitDeviceEvent ( 'netInfo.networkStatusDidChange' , data )
105
- } )
106
- }
100
+ this . listenerGetCurrentState ( )
107
101
} )
108
102
// 订阅网络阻塞状态事件
109
- this . netConnection . on ( 'netBlockStatusChange' , ( data ) => {
110
- Logger . info ( 'netBlockStatusChange,' + JSON . stringify ( data ) ) ;
111
- } )
112
- // 订阅网络能力变化事件
113
- // this.netConnection.on('netCapabilitiesChange', (data) => {
114
- // Logger.info('netCapabilitiesChange,' + JSON.stringify(data));
103
+ // this.netConnection.on('netBlockStatusChange', (data) => {
104
+ // Logger.info('netBlockStatusChange,' + JSON.stringify(data));
115
105
// })
116
- // 订阅网络连接信息变化事件
117
- this . netConnection . on ( 'netConnectionPropertiesChange' , ( data ) => {
118
- Logger . info ( 'netConnectionPropertiesChange,' + JSON . stringify ( data ) ) ;
106
+ // 订阅网络能力变化事件
107
+ this . netConnection . on ( 'netCapabilitiesChange' , ( data ) => {
108
+ Logger . info ( 'netCapabilitiesChange,' + JSON . stringify ( data ) ) ;
109
+ this . listenerGetCurrentState ( )
119
110
} )
111
+ // 订阅网络连接信息变化事件
112
+ // this.netConnection.on('netConnectionPropertiesChange', (data) => {
113
+ // Logger.info('netConnectionPropertiesChange,' + JSON.stringify(data));
114
+ // })
120
115
// 订阅网络丢失事件
121
116
this . netConnection . on ( 'netLost' , ( data ) => {
122
117
Logger . info ( 'netLost,' + JSON . stringify ( data ) )
123
- if ( this . numberOfListeners > 0 ) {
124
- this . createConnectionEvent ( )
125
- . then ( data => {
126
- Logger . info ( 'netInfo.networkStatusDidChange,netLost' + this . numberOfListeners )
127
- this . ctx . rnInstance . emitDeviceEvent ( 'netInfo.networkStatusDidChange' , data )
128
- } )
129
- }
118
+ this . listenerGetCurrentState ( )
130
119
} )
131
120
// 订阅网络不可用事件
132
121
this . netConnection . on ( 'netUnavailable' , ( data ) => {
133
122
Logger . info ( 'netUnavailable,' + JSON . stringify ( data ) )
123
+ this . listenerGetCurrentState ( )
134
124
} )
135
125
}
136
126
127
+ listenerGetCurrentState ( ) : void {
128
+ if ( this . numberOfListeners > 0 ) {
129
+ this . createConnectionEvent ( )
130
+ . then ( data => {
131
+ this . ctx . rnInstance . emitDeviceEvent ( 'netInfo.networkStatusDidChange' , data )
132
+ } )
133
+ }
134
+ }
135
+
137
136
async createConnectionEvent ( ) : Promise < NetInfoState > {
138
137
//判断wifi使能
139
138
const event : NetInfoState = { }
@@ -163,9 +162,12 @@ export class NetInfoTurboModule extends TurboModule {
163
162
case 3 :
164
163
event . type = 'ethernet'
165
164
break
165
+ default :
166
+ event . type = 'unknown'
167
+ break
166
168
}
167
169
} //判断是否可访问internet
168
- event . isInternetReachable = netCapabilities . networkCap . indexOf ( 12 ) != - 1
170
+ event . isInternetReachable = netCapabilities . networkCap . indexOf ( 16 ) != - 1
169
171
// if (netCapabilities.networkCap.length == 1) {
170
172
// event.isInternetReachable = netCapabilities.networkCap[0] == 12
171
173
// }
@@ -180,26 +182,26 @@ export class NetInfoTurboModule extends TurboModule {
180
182
case 'cellular' :
181
183
break
182
184
case 'wifi' :
183
- //wifi信息
185
+ //wifi信息
184
186
const linkedInfo = await wifiManager . getLinkedInfo ( )
185
- //ssid
187
+ //ssid
186
188
details . ssid = linkedInfo . ssid
187
- //bssid
189
+ //bssid
188
190
details . bssid = linkedInfo . bssid
189
- //信号强度 与安卓备注有区别
191
+ //信号强度 与安卓备注有区别
190
192
details . strength = linkedInfo . rssi
191
- //ipAddress
193
+ //ipAddress
192
194
const ipInfo = wifiManager . getIpInfo ( ) ;
193
195
details . ipAddress = this . ipToString ( ipInfo . ipAddress )
194
- //subnet 掩码
196
+ //subnet 掩码
195
197
details . subnet = this . ipToString ( ipInfo . netmask )
196
- //frequency
198
+ //frequency
197
199
details . frequency = linkedInfo . frequency
198
- //linkSpeed
200
+ //linkSpeed
199
201
details . linkSpeed = linkedInfo . linkSpeed
200
- //rxLinkSpeed
202
+ //rxLinkSpeed
201
203
details . rxLinkSpeed = linkedInfo . rxLinkSpeed
202
- //txLinkSpeed
204
+ //txLinkSpeed
203
205
details . txLinkSpeed = linkedInfo . linkSpeed
204
206
break
205
207
case 'ethernet' :
0 commit comments