コード例 #1
0
 // reference: Anti-Emulator + https://github.com/flutter/plugins/blob/master/packages/device_info/android/src/main/java/io/flutter/plugins/deviceinfo/MethodCallHandlerImpl.java#L97
 public bool?IsRunningOnVirtualDevice()
 {
     return(FindEmulator.HasEmulatorBuild(Application.Context) ||
            FindEmulator.HasPipes ||
            FindEmulator.HasQEmuDrivers ||
            FindEmulator.HasEmulatorAdb ||
            FindEmulator.HasQEmuFiles ||
            FindEmulator.HasGenyFiles ||
            (Build.Brand.StartsWith("generic") && Build.Device.StartsWith("generic")) ||
            Build.Fingerprint.StartsWith("generic") ||
            Build.Fingerprint.StartsWith("unknown") ||
            Build.Hardware.Contains("goldfish") ||
            Build.Hardware.Contains("ranchu") ||
            Build.Model.Contains("google_sdk") ||
            Build.Model.Contains("Emulator") ||
            Build.Model.Contains("Android SDK built for x86") ||
            Build.Manufacturer.Contains("Genymotion") ||
            Build.Product.Contains("sdk_google") ||
            Build.Product.Contains("google_sdk") ||
            Build.Product.Contains("sdk") ||
            Build.Product.Contains("sdk_x86") ||
            Build.Product.Contains("vbox86p") ||
            Build.Product.Contains("emulator") ||
            Build.Product.Contains("simulator"));
 }
コード例 #2
0
 public bool IsQEmuEnvDetected()
 {
     Log("Checking for QEmu env...");
     Log("hasKnownDeviceId : " + FindEmulator.HasKnownDeviceId(this));
     Log("hasKnownPhoneNumber : " + FindEmulator.HasKnownPhoneNumber(this));
     Log("isOperatorNameAndroid : " + FindEmulator.IsOperatorNameAndroid(this));
     Log("hasKnownImsi : " + FindEmulator.HasKnownImsi(this));
     Log("hasEmulatorBuild : " + FindEmulator.HasEmulatorBuild(this));
     Log("hasPipes : " + FindEmulator.HasPipes);
     Log("hasQEmuDriver : " + FindEmulator.HasQEmuDrivers);
     Log("hasQEmuFiles : " + FindEmulator.HasQEmuFiles);
     Log("hasGenyFiles : " + FindEmulator.HasGenyFiles);
     Log("hasEmulatorAdb :" + FindEmulator.HasEmulatorAdb);
     foreach (string abi in Build.SupportedAbis)
     {
         if (abi.Equals("armeabi-v7a", StringComparison.InvariantCultureIgnoreCase))
         {
             Log("hitsQemuBreakpoint : " + FindEmulator.CheckQemuBreakpoint());
         }
     }
     if (FindEmulator.HasKnownDeviceId(this) ||
         FindEmulator.HasKnownImsi(this) ||
         FindEmulator.HasEmulatorBuild(this) ||
         FindEmulator.HasKnownPhoneNumber(this) || FindEmulator.HasPipes ||
         FindEmulator.HasQEmuDrivers || FindEmulator.HasEmulatorAdb ||
         FindEmulator.HasQEmuFiles ||
         FindEmulator.HasGenyFiles)
     {
         Log("QEmu environment detected.");
         return(true);
     }
     else
     {
         Log("QEmu environment not detected.");
         return(false);
     }
 }