보안 감지: Kotlin에서 Wi-Fi 감지 API
Esta característica es muy interesante porque con el API podremos verificar las características de WiFi y el router que conectará el dispositivo del usuario, analizando la información de WiFi para evitar ataques(ARP, ataques de intermediarios, ataques de secuestro de DNS y otros tipos de ataques) que puede afectar el WiFi que se conectará). 따라서 빨간색 WiFi 연결을 사용할 수 있는 경우 연결이 끊기거나 연결이 끊기거나 계속 연결될 수 있습니다.
Para continuar, explicaremos con un ejemplo de codigo cómo usar esta función en tu aplicación en Kotlin. Para el primer paso, debemos haber agregado el Kit de detección de seguridad en nuestro proyecto utilizando el proceso de desarrollo común que es el mismo con el que inicializamos otros kits en la consola AppGallery Connect.
Nos enfocaremos en este proceso, si tienes dudas Consulta el siguiente articulo en donde se explica detalladamente el proceso.
Link
Después de este paso, deberemos agregar el kit nuestro proyecto de Android Studio siguiendo estos pasos.
Link
Cuando estes listo y hayas agregado todas las las configuraciones relacionadas con al proyecto y la integración del kit de detección de seguridad, debemos agregar los siguientes permisos al AndroidManifest.
<!-- Internet Permission -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- Access Network State -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- Access WiFi State -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
El siguiente paso es crear la validation principal de la disponibilidad de HMS y, si es correcta, crear una función para usar el estado de Wifi Direct de la siguente manera:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)if (HuaweiApiAvailability.getInstance()
.isHuaweiMobileServicesAvailable(this) == ConnectionResult.SUCCESS
) {
//Load safety
setupWifiDetect()
} else {
//Prompt to load HMS
}
}private fun setupWifiDetect() {
val wifiDetectClient = SafetyDetect.getClient(this@MainActivity)
val task = wifiDetectClient.wifiDetectStatus
task.addOnSuccessListener { wifiDetectResponse ->
val wifiDetectStatus = wifiDetectResponse.wifiDetectStatus/**
*-1: Failed to obtain the Wi-Fi status.
* 0: No Wi-Fi is connected.
* 1: The connected Wi-Fi is secure.
* 2: The connected Wi-Fi is insecure.
*/Log.e(TAG, "Wifi status $wifiDetectStatus")wifiDetectMessage.text = "Wifi status $wifiDetectStatus"}.addOnFailureListener {
if (it is ApiException) {
val apiException = it
Log.e(
TAG, "Error " + apiException.statusCode + ":"
+ SafetyDetectStatusCodes.getStatusCodeString(apiException.statusCode)
+ ": " + apiException.statusMessage
)wifiDetectMessage.text =
"Error " + apiException.statusCode + ":" + SafetyDetectStatusCodes.getStatusCodeString(
apiException.statusCode
) + ": " + apiException.statusMessage} else {
Log.e(TAG, "OTHER ERROR: " + it.message)
wifiDetectMessage.text = "OTHER ERROR: " + it.message
}
}
}
Tenemos dos listeners OnSuccess y OnFailure, OnSuccess envía el estado de detección de WiFi donde puede obtener el siguiente estado:
-1: Wi-Fi에 접속할 수 있는 대상이 없습니다.
0: 건초 WiFi 연결 없음
1: el WiFi conectado es seguro
2: el WiFi conectado es inseguro
Y en el bloque OnFailure, puede recibir una excepción relacionada con el servicio.
El siguiente enlace contiene todo el ejemplo:
Link
Por el momento , este codigo solo funciona en China pues al momento de la publicacion de este articulo aun no se ha liberado la version para America, pero con esta guía podremos implementar esta función para tu aplicación para mantenerla más segura con esta API con lo que lograremos mantener una seguridad optima en la App.
Reference
이 문제에 관하여(보안 감지: Kotlin에서 Wi-Fi 감지 API), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/huaweidevslatam/deteccion-de-seguridad-api-de-deteccion-de-wifi-en-kotlin-2ppj텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)