¿La habilitación Wi-Fi drena más o menos la batería al localizar la ubicación?
Tengo una aplicación móvil (iOS y Android) que pings la ubicación ~ cada 15 segundos y se utiliza en las zonas urbanas.
Desde mi entendimiento
- Android: ¿Conectar dos teléfonos inalámbricamente?
- Android móvil no detectar la red inalámbrica creada en mi portátil
- Conectarse a la red wifi en android, devolver si la contraseña es incorrecta
- Android - Get Notified cuando se detecta un nuevo punto de acceso?
- ¿Cómo distinguir entre diferentes redes wifi?
- Si Wi-Fi está deshabilitado, la aplicación sólo usará GPS para la ubicación
- Si Wi-Fi está habilitado, la aplicación utilizará una mezcla de Wi-Fi y GPS o simplemente Wi-Fi
En general, Wi-Fi en los desagües más batería, sin embargo, si está rastreando la ubicación, entonces podría ahorrar batería, ya que el GPS es más intensivo de la batería de Wi-Fi (creo!)
¿Alguien tiene datos si habilitar (pero no conectarse) Wi-Fi será mejor o peor para la vida de la batería?
- Android Compruebe si hay WiFi pero no Internet
- Cómo enviar un archivo de android a la impresora wifi programatically e imprimir el archivo?
- Conexión WiFi de Android mediante programación
- Obtener la dirección MAC del dispositivo: cuando el wifi está desactivado
- ¿Cómo detectar dispositivos móviles cercanos usando el SDK de Android?
- Creación de un registro WiFi NDEF utilizando application / vnd.wfa.wsc en Android
- Acceso a la red cuando el teléfono Android está dormido
- Especifique el canal (o frecuencia) para la exploración Wi-Fi en Android
Habilitar WiFi debe ser bueno para la vida de la batería, pero depende totalmente de cómo se codifica su aplicación. Si echas un vistazo a la página de Android sobre Estrategias de ubicación , se indica: "GPS, Cell-ID y Wi-Fi pueden proporcionar una pista a la ubicación de los usuarios. Determinar qué usar y confiar es una cuestión de compensaciones en la precisión, la velocidad y la eficiencia de la batería .
Es posible obtener la ubicación de sólo WiFi (sí, sin conexión!):
netLocation = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
Pero esto puede no ser la solución más precisa. GPS utiliza una cantidad justa de energía, pero es obviamente más exacto que WiFi, y la búsqueda de hotspots WiFi no conectados también toma energía. En otras palabras, esta es una pregunta muy complicada.
Con todo, la mejor solución (para evitar gastar todo su tiempo en codificar esta ubicación) es integrar los servicios de Google Play en su aplicación. A continuación, puede especificar la prioridad de encontrar la ubicación (potencia o precisión) y Google lo clasificará para usted (consulte esto o los documentos oficiales de google aquí ).
protected void createLocationRequest() { mLocationRequest = new LocationRequest(); mLocationRequest.setInterval(15000); mLocationRequest.setFastestInterval(5000); mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY); } protected void startLocationUpdates() { LocationServices.FusedLocationApi.requestLocationUpdates( mGoogleApiClient, mLocationRequest, this); } @Override public void onLocationChanged(Location location) { mLastLocation = location; }
Las otras prioridades son PRIORITY_BALANCED_POWER_ACCURACY, PRIORITY_LOW_POWER, PRIORITY_NO_POWER.
Sin embargo, de nuevo a la pregunta. Si observamos nuevamente la página de Android sobre Estrategias de ubicación y nos desplácese hacia abajo, se dice: "Dependiendo del entorno en el que se utilice su aplicación o del nivel de precisión deseado, puede optar por utilizar sólo el proveedor de ubicación de red o sólo el GPS. ambos. Interactuar con sólo uno de los servicios reduce el uso de la batería a un costo potencial de precisión. '
A partir de esto, podemos dibujar que el uso de WiFi y GPS ofrece una ubicación más precisa que usar sólo uno , pero que con sólo uno utiliza menos energía que utilizando ambos. SIN EMBARGO, esto depende del ambiente. Dado que su aplicación está diseñada para su uso en entornos URBAN, a menudo es más difícil obtener señales GPS (debido a edificios). Pero conseguir una ubicación de WiFi por sí solo no funciona todo el tiempo (incluso en entornos urbanos). Sin embargo, para su aplicación, ya que se utiliza en entornos URBAN, creo que el uso de WiFi y GPS será la opción más eficiente de energía para usted, porque a veces el GPS puede no estar disponible o tomará mucho tiempo para conectarse Entornos) . Recuerde, en ambientes urbanos la gente puede perder GPS (por ejemplo, entrar en una tienda o en un callejón muy estrecho). Pero si tienes WiFi, espero que todavía pueda tener su ubicación. Otra opción posible para pensar es tratando de obtener su ubicación utilizando WiFi sólo al principio, y luego probar GPS sólo si no puede obtener su ubicación mediante WiFi. Pero esto depende de lo preciso que necesite su ubicación. En definitiva, solo déjalo a Google (como se muestra arriba).
En respuesta a tu pregunta, depende de cómo encuentres la ubicación del usuario. He sugerido cómo codificar tu aplicación, pero si quieres dejarla como está, publica o comenta el código que estás utilizando para encontrar la ubicación del usuario para que se pueda determinar qué opción es más eficiente.
EDIT: He visto que se trata de iOS, así como Android. IOS proporciona mucho menos control sobre cómo se determina la ubicación. Sólo tienes que conectar la precisión deseada y Apple hacer el resto. Apple determinará la manera más eficiente de conseguir la ubicación, y las mismas cosas que he escrito anteriormente se aplican. De todos modos, Apple le pedirá a los usuarios que activen el WiFi si está deshabilitado al obtener la ubicación, por lo que intentar evitar el uso de WiFi para la ubicación en iOS es prácticamente imposible.
El consumo de energía del GPS es extremadamente alto en comparación con WiFi. La mayoría del teléfono dura menos de 10 horas en GPS, mientras que con WiFi pueden durar más de día.
Wi-Fi no es sólo para la ubicación o el Internet, tiene múltiples usos, si está utilizando os más antiguo que Marshmallow, no se puede desactivar toda la funcionalidad para utilizar WiFi mientras está encendido.
De Marshmallow usted puede permitirlo para el uso específico como la localización solamente. Por lo que consumirá menos energía que el GPS.
Mientras que en la versión anterior, GPS está en condición de ganar en el consumo de energía. https://android.stackexchange.com/a/127571/116948
No tengo ningún dato hardcore sobre el tema, y dudo que alguien tenga números concretos, pero teóricamente Wi-Fi será mucho mejor que GPS solamente. La teoría funciona algo como lo siguiente: Para que un GPS sepa dónde está alguien, necesita recibir información de 3 objetos diferentes en ubicaciones conocidas y usar la triangulación para determinar su ubicación a partir de eso, mientras que el wifi solo necesita hacer una Llamada, al repetidor de Internet más cercano, que tiene una ubicación conocida y ruta conocida. Con el fin de asegurar la exactitud de esto a menudo se hace varias veces con cada solicitud de ubicación. Por lo tanto, las llamadas adicionales se suman y Wifi será más eficiente.
Utilice WiFi siempre que tenga acceso a una red porque utiliza menos batería que GPS. (Distancia más corta, menor potencia.) Apague WiFi cuando no tenga acceso a una red, de lo contrario seguirá buscando una red WiFi que pueda usar (lo que drena la batería).
- ¿Por qué error: (2) No se encontró identificador de recurso para el atributo 'shortcutShortLabel' en el paquete 'android' al crear shourtcut en Android7?
- ¿Por qué el límite de frecuencia de anuncios de AdMob no funciona?