Stimmt es, dass es keinen Android-Emulator gibt (Stand Mai 2021), der ein Android-Telefon emulieren kann, sodass eine App es nicht erkennen kann?
Von allen Emulatoren da draußen (ich habe eine Liste mit den 15 besten Android-Emulatoren gesehen ) waren sie nicht in der Lage, es zu tun? Der Grund dafür ist, dass es etwas seltsam erscheint, warum es nicht möglich ist, eine solche Umgebung vollständig zu emulieren, wenn ein 99-US-Dollar-Telefon die Arbeit erledigen kann. (und dass einige Entwickler den Emulator möglicherweise mit dem ursprünglichen Ziel schreiben: Kein Code, der im Emulator ausgeführt wird, kann erkennen, dass es sich um einen Emulator handelt).
Ich denke, wahrscheinlich kann der offizielle Android-Entwickler-Emulator die Arbeit auch nicht (vielleicht absichtlich) oder sonst würde er als Methode in einem Forum empfohlen.
Sie sprechen von einem Android-Gerät, es können 100.000 kleine Unterschiede zwischen echten und emulierten Geräten bestehen. Selbst das Beseitigen all dieser Unterschiede, die "behoben" werden können, erfordert einiges an Arbeit.
Allein die Ausführungsgeschwindigkeit ist ein Indikator, den man nicht so einfach fälschen kann. Um ein ARM-Gerät zu emulieren, das 99 US-Dollar kostet, benötigen Sie möglicherweise einen PC, der mehr als 1000 US-Dollar kostet, und dann ist die Ausführungsgeschwindigkeit eines ARM-Emulators immer noch niedriger als die des physischen Geräts. Dies liegt daran, dass die Emulation einer ARM-CPU auf einer x86-CPU schwierig ist und viele CPU-Ressourcen erfordert.
Selbst wenn Sie einen der neuen Apple-Computer mit einem M1-ARM-Chip verwenden würden (oder ein anderes Gerät, auf dem ein schneller ARM-basierter Chip läuft, der daher die meisten ARM-Befehle direkt versteht), werden Sie immer noch Unterschiede auf Code-Ebene feststellen erkennen und daher mit hoher Wahrscheinlichkeit vermuten, dass es sich um einen Emulator handelt.
Ein weiteres Problem ist, dass Sie, vorausgesetzt, Sie könnten einen Emulator erstellen, den eine App nicht als Emulator erkennen kann, ihn dann an jeden im Internet verkaufen. Sehr bald werden die Leute, von denen Sie nicht möchten, dass eine App auf einem Emulator läuft, Ihren Emulator erkennen, ihn bekommen und auseinandernehmen, bis sie einen Weg gefunden haben, ihn immer noch zu erkennen.
Daher lautet aus meiner Sicht die Antwort auf Ihre Frage: Ja, mit hoher Wahrscheinlichkeit gibt es Emulatoren, die derzeit von keiner App als Emulatoren erkannt werden können. Damit das so bleibt, werden diese Emulatoren jedoch nie veröffentlicht und können nirgendwo gekauft oder abgerufen werden.
Zum Beispiel haben Antiviren-Unternehmen höchstwahrscheinlich einen solchen Emulator, da Malware normalerweise die raffinierteste Methode enthält, um zu erkennen, ob sie in einer emulierten Umgebung oder auf einem normalen Gerät ausgeführt wird. Das Ausführen in einer emulierten Umgebung für Malware bedeutet normalerweise, dass jemand sie analysiert (was der Malware-Autor offensichtlich nicht will).
Alex
Stefanie Gauß
Alex