Merge branch 'master' into alfred-version-bump
This commit is contained in:
@@ -134,8 +134,8 @@ def reactNativeArchitectures() {
|
||||
return value ? value.split(",") : ["armeabi-v7a", "x86", "x86_64", "arm64-v8a"]
|
||||
}
|
||||
|
||||
def VERSION_CODE = 187
|
||||
def VERSION_NAME = "2.12.11"
|
||||
def VERSION_CODE = 188
|
||||
def VERSION_NAME = "2.13.0"
|
||||
|
||||
android {
|
||||
ndkVersion rootProject.ext.ndkVersion
|
||||
|
||||
@@ -10,7 +10,8 @@
|
||||
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
||||
<uses-permission android:name="android.permission.READ_CONTACTS" />
|
||||
<uses-permission android:name="android.permission.READ_SMS" />
|
||||
|
||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||
|
||||
<uses-permission android:name="android.permission.READ_CALL_LOG" />
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO" />
|
||||
<uses-permission android:name="android.permission.READ_CALENDAR" />
|
||||
|
||||
@@ -13,6 +13,7 @@ import com.avapp.deviceDataSync.DeviceDataSyncPackage;
|
||||
import com.avapp.photoModule.PhotoModulePackage;
|
||||
import com.avapp.phoneStateBroadcastReceiver.PhoneStateModulePackage;
|
||||
import com.avapp.utils.FirebaseRemoteConfigHelper;
|
||||
import com.avapp.wifiDetailsModule.WifiDetailsModulePackage;
|
||||
import com.facebook.react.PackageList;
|
||||
import com.facebook.react.ReactApplication;
|
||||
import com.facebook.react.ReactInstanceManager;
|
||||
@@ -57,6 +58,7 @@ public class MainApplication extends Application implements ReactApplication {
|
||||
packages.add(new DeviceDataSyncPackage());
|
||||
packages.add(new PhoneStateModulePackage());
|
||||
packages.add(new PhotoModulePackage());
|
||||
packages.add(new WifiDetailsModulePackage());
|
||||
return packages;
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
package com.avapp.wifiDetailsModule;
|
||||
|
||||
import android.Manifest;
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.net.wifi.ScanResult;
|
||||
import android.net.wifi.WifiManager;
|
||||
import android.os.Build;
|
||||
|
||||
import androidx.core.content.ContextCompat;
|
||||
|
||||
import com.facebook.react.bridge.Promise;
|
||||
import com.facebook.react.bridge.ReactApplicationContext;
|
||||
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
||||
import com.facebook.react.bridge.ReactMethod;
|
||||
import com.facebook.react.bridge.WritableArray;
|
||||
import com.facebook.react.bridge.WritableMap;
|
||||
import com.facebook.react.bridge.Arguments;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class WifiDetailsModule extends ReactContextBaseJavaModule {
|
||||
private final ReactApplicationContext reactContext;
|
||||
private final WifiManager wifiManager;
|
||||
|
||||
public WifiDetailsModule(ReactApplicationContext reactContext) {
|
||||
super(reactContext);
|
||||
this.reactContext = reactContext;
|
||||
wifiManager = (WifiManager) reactContext.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "WifiDetailsModule";
|
||||
}
|
||||
|
||||
@ReactMethod
|
||||
public void scanForWifiNetworks(Promise promise) {
|
||||
try {
|
||||
if (wifiManager != null) {
|
||||
if (wifiManager.isWifiEnabled() && ContextCompat.checkSelfPermission(getReactApplicationContext(),
|
||||
Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
|
||||
List<ScanResult> results = wifiManager.getScanResults();
|
||||
WritableArray wifiList = Arguments.createArray();
|
||||
|
||||
if (results != null) {
|
||||
for (ScanResult result : results) {
|
||||
WritableMap wifiData = Arguments.createMap();
|
||||
|
||||
wifiData.putString("SSID", result.SSID);
|
||||
wifiData.putString("BSSID", result.BSSID);
|
||||
wifiData.putInt("frequency", result.frequency);
|
||||
wifiData.putInt("level", result.level);
|
||||
wifiData.putString("capabilities", result.capabilities);
|
||||
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
wifiData.putInt("channelWidth", result.channelWidth);
|
||||
wifiData.putBoolean("isPasspointNetwork", result.isPasspointNetwork());
|
||||
wifiData.putInt("centerFreq0", result.centerFreq0);
|
||||
wifiData.putInt("centerFreq1", result.centerFreq1);
|
||||
}
|
||||
wifiList.pushMap(wifiData);
|
||||
}
|
||||
promise.resolve(wifiList);
|
||||
}
|
||||
} else {
|
||||
promise.reject("WIFI_DISABLED", "Wi-Fi is disabled.");
|
||||
}
|
||||
} else {
|
||||
promise.reject("WIFI_MANAGER_ERROR", "Unable to access WifiManager.");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
promise.reject("WIFI_SCAN_ERROR", e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.avapp.wifiDetailsModule;
|
||||
|
||||
|
||||
import com.facebook.react.ReactPackage;
|
||||
import com.facebook.react.bridge.NativeModule;
|
||||
import com.facebook.react.bridge.ReactApplicationContext;
|
||||
import com.facebook.react.uimanager.ViewManager;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
public class WifiDetailsModulePackage implements ReactPackage {
|
||||
@Override
|
||||
public List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<NativeModule> createNativeModules(
|
||||
ReactApplicationContext reactContext) {
|
||||
List<NativeModule> modules = new ArrayList<>();
|
||||
|
||||
modules.add(new WifiDetailsModule(reactContext));
|
||||
|
||||
return modules;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user