¿No hay ningún emulador que pueda emular totalmente un dispositivo Android?

¿Es cierto que no existe ningún emulador de Android (a partir de mayo de 2021) que pueda emular un teléfono Android para que una aplicación no pueda detectarlo?

De todos los emuladores que existen (vi una lista de los 15 mejores emuladores de Android ), ¿no pudieron hacerlo? La razón es que parecería un poco extraño por qué no es posible emular tal entorno por completo, si un teléfono de US$99 puede hacer el trabajo. (y que algunos desarrolladores pueden escribir el emulador con el objetivo original de: ningún código que se ejecute en el emulador puede decir que es un emulador).

Creo que probablemente el emulador oficial de desarrolladores de Android tampoco puede hacer el trabajo (tal vez intencionalmente) o, de lo contrario, se recomendaría como método en algún foro.

lo que describe es un emulador de pokemon, no un emulador de Android
no... emulador de Android... y luego ejecute Pokemon Go la aplicación dentro de él. Si tenemos una máquina virtual con Windows 10 y ejecutamos Microsoft Word en ella, no dirá que estamos emulando Microsoft Word, sino que estamos emulando una máquina con Windows 10, ¿no es así?
el teléfono inteligente tiene ~ 6 sensores y gps, lo que desea es emular valores para todos estos sensores de manera que no se viole ninguna verificación de plausibilidad. estos controles son desarrollados por pokemon, me suena bastante a emulador de pokemon

Respuestas (1)

Estás hablando de un dispositivo Android, puede haber 100.000 pequeñas diferencias entre dispositivos reales y emulados. Incluso eliminar todas esas diferencias que se pueden "arreglar" requiere bastante trabajo.

Solo la velocidad de ejecución es un indicador que no puede falsificar tan fácilmente. Para emular un dispositivo ARM que cuesta US $ 99, es posible que necesite una PC que cueste más de US $ 1000, y luego la velocidad de ejecución de un emulador ARM seguirá siendo menor que la del dispositivo físico. Esto se debe a que emular una CPU ARM en una CPU x86 es difícil y requiere muchos recursos de CPU.

Incluso si usara una de las nuevas computadoras Apple con un chip ARM M1 (u otro dispositivo que ejecuta un chip basado en ARM rápido que, por lo tanto, comprende la mayoría de los comandos ARM directamente), aún habrá diferencias en el nivel de código que necesita. puede detectar y por lo tanto adivinar que con una alta probabilidad se trata de un emulador.

Otro problema es que, suponiendo que pueda crear un emulador que una aplicación no pueda detectar como emulador, luego se lo vende a cualquier persona en Internet. Muy pronto, aquellas personas a las que no desea que una aplicación se ejecute en un emulador reconocerán su emulador, lo obtendrán y lo destrozarán hasta que encuentren una manera de detectarlo.

Por lo tanto, desde mi perspectiva, la respuesta a su pregunta es: sí, con una alta probabilidad, hay emuladores en este momento que ninguna aplicación puede detectar como emuladores. Sin embargo, para que siga siendo así, esos emuladores nunca se publican y no se pueden comprar ni recuperar en ningún lado.

Por ejemplo, es muy probable que las empresas antivirus tengan un emulador de este tipo porque el malware suele contener la forma más sofisticada de detectar si se están ejecutando en un entorno emulado o en un dispositivo normal. Ejecutarse en un entorno emulado para malware generalmente significa que hay alguien analizándolo (lo que obviamente el autor del malware no quiere).

si es la velocidad, entonces sería como si el móvil tuviera 3 años, pero no debería impedir que el emulador juegue Pokemon Go, por ejemplo... así que la velocidad debería estar bien. El objetivo del emulador debería ser: la aplicación no puede saber realmente que es el dispositivo real o en un entorno virtual... si derriban el emulador y encuentran la manera de hacerlo, entonces no es un entorno "totalmente" emulado. todavía. Por ejemplo, podemos escribir un emulador de procesador x86 y el código de máquina que se ejecuta en él no debería tener absolutamente ninguna forma de decirse a sí mismo ejecutándose en un procesador Intel o en un emulador de procesador.
@StefanieGauss Lo siento, pero no entiendes el punto. Los desarrolladores de Pokémon no quieren que uses un emulador y siempre encontrarán una manera de probar si estás en un emulador. Si el emulador está mejorando, mejoran la prueba y, como un teléfono inteligente contiene bastantes sensores físicos, será muy difícil emular todo. Solo acepta que los desarrolladores tienen más poder que tú. Un principio básico de los juegos es que hay reglas, reglas que debes aceptar para jugar.
Sé que los desarrolladores de juegos quieren "superarlo"... pero en el mundo actual de códigos y algoritmos, es muy fácil decir: "Oh, estoy a una altura de 2 metros y el teléfono está inclinado 23 grados" y luego 10 segundos, "oh, estoy a una altura de 1,8 metros y el teléfono está inclinado 26 grados". Quiero decir, estos son pan comido. ¿Cuántas cosas pueden comprobar? 20, 30? ¿Y es difícil fingir 20 cosas o 30 cosas? En el software, podemos falsificar 1 cosa en 10 minutos... hay un conjunto limitado de API y todas pueden falsificarse