Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux是Android开发者的通用环境吗?_Android_Linux_Device Driver - Fatal编程技术网

Linux是Android开发者的通用环境吗?

Linux是Android开发者的通用环境吗?,android,linux,device-driver,Android,Linux,Device Driver,我这样问是因为显然很少有设备支持Linux。我的设备(Asus)没有Linux的USB驱动程序,谷歌的USB驱动程序也不兼容。这让我想到了模拟器。这是一条路吗?或者我应该转向Windows吗?大多数智能手机OEM已经为Mac OS X和Windows开发了驱动程序,并且已经排除了Linux。不仅如此,Intel x86虚拟化(它使您的仿真器与真实设备一样快)也只能在Windows上工作,而不能在Linux上工作。但是,在Linux中,您有一个称为kvm的内核模块,它在Windows上扮演HAXM

我这样问是因为显然很少有设备支持Linux。我的设备(Asus)没有Linux的USB驱动程序,谷歌的USB驱动程序也不兼容。这让我想到了模拟器。这是一条路吗?或者我应该转向Windows吗?

大多数智能手机OEM已经为Mac OS X和Windows开发了驱动程序,并且已经排除了Linux。不仅如此,Intel x86虚拟化(它使您的仿真器与真实设备一样快)也只能在Windows上工作,而不能在Linux上工作。但是,在Linux中,您有一个称为
kvm
的内核模块,它在Windows上扮演HAXM的角色。而
kvm
可与英特尔和AMD一起使用

根据这一点,您可以考虑Windows来简化Android软件开发的学习过程,或者更好地使用OSX,因为它也允许您进行IOS开发(Windows上不可能)。此外,当您插入手机时,OSX会自动下载智能手机驱动程序,而在Windows上,您必须在web上搜索驱动程序

进一步考虑事项:

  • 所有的
    Nexus
    设备都在Ubuntu Linux上工作,没有任何麻烦
  • 许多使用NDK的开发人员更喜欢使用Linux,因为在Linux环境中使用NDK工具很容易,即不需要使用Cygwin/MinGW
另请参见:

1.


2.

Nexus设备在Ubuntu上工作没有任何问题。此外,如果您打算使用NDK进行任何严肃的工作,我建议您使用Linux,因为使用它构建脚本等工作要容易得多。否则Windows或iOS就可以了。我有一台Nexus 7平板电脑(华硕/谷歌),通过USB连接到Ubuntu Linux从来没有遇到过任何问题。@IvanLebediev:你看到我的答案了吗?@ZygoteInit:是的,这对我来说是合理的,谢谢。英特尔HAXM只在Windows和OSX上工作,但那是因为在Linux上已经有一个内置的内核模块来完成同样的任务:kvm。kvm可与AMD和Intel CPU一起使用。Linux上甚至不需要OEM Android驱动程序。即使在Windows上,您也几乎可以强制使用Google USB驱动程序。