下午好。
我开始研究kivy并发现我无法在计算机上预先测试某些功能。
每次你必须构建一个 apk 文件,将它上传到你的手机,在那里安装并检查它。如果编写的代码需要调试,那么它通常会变成一场噩梦。
现在这主要发生在我编写与地理定位相关的代码时,但我怀疑将来我会想要使用陀螺仪传感器和其他一些智能手机特定的东西。
是否可以在计算机上模拟所有这些传感器,这样您就可以在不手鼓跳舞的情况下进行调试?
下午好。
我开始研究kivy并发现我无法在计算机上预先测试某些功能。
每次你必须构建一个 apk 文件,将它上传到你的手机,在那里安装并检查它。如果编写的代码需要调试,那么它通常会变成一场噩梦。
现在这主要发生在我编写与地理定位相关的代码时,但我怀疑将来我会想要使用陀螺仪传感器和其他一些智能手机特定的东西。
是否可以在计算机上模拟所有这些传感器,这样您就可以在不手鼓跳舞的情况下进行调试?
通常,大多数普通传感器都可以在仿真器上进行仿真。甚至指纹传感器。
如果虚拟设备不支持他们的仿真,那么你可以安装SensorEmulator并获得你想要的......
另一方面,当然,物理设备总是比虚拟设备好。此外,一些物理设备可以模拟传感器读数的变化——例如,模拟一个位置(几乎所有的三星都有这样的开发功能)。
更新
Android Studio 包包括所谓的。Android 虚拟设备管理器 -在这里阅读更多
还有其他第三方开发,最著名的是Geny Motion——它基于Oracle VirtualBox
或多或少的标准开发模式是首先在虚拟设备上进行测试,然后才在物理设备上进行测试。
是的,你可以,你需要任何适用于 PC 的安卓模拟器。它们都是免费的,并且都允许模拟各种传感器和 GPS。可以通过命令行实用程序(或通过 IDE)或简单地拖放 apk 文件来在它们上安装 apk 文件。
最流行的可能是 Android Virtual Devices,它随 Android SDK(或 Android Studio)一起提供。你可以在这里阅读它。不幸的是,最近独立安装变得更加困难,而从模拟器、工作室和 SDK下载捆绑包变得更加容易。
很长一段时间,Genymotion 很受欢迎——第一个大规模的 x86 模拟器。它曾经有一个非商业用途的无限免费试用。有一个独立安装,它需要 virtualbox。
如果出于某种原因你真的需要 Hyper-V,那么以上选项都不起作用,但 Visual Stuido 的 Android 模拟器会起作用。它可以与免费的社区版 IDE 一起安装,请在此处阅读更多信息。
现在在功能和性能上没有太大区别,但请记住,最后两个模拟器使用 x86 架构的图像,所以如果你在开发中使用 C/C++ 库(这不太可能,除非你有视频/图像processing) ,那么您将需要用于模拟器的库的 x86 版本和用于真实设备的 ARM 版本,或者为特定的模拟器寻找 ARM 到 x86 的转换器。