显然,出于安全原因,Android 会在沙盒模式下运行应用程序,但如果我在 Android 设备上拥有 root 和 shell 访问权限,那么我是否可以将其视为常规 Linux 发行版,并运行我能够下载和安装的任何程序(假设架构/硬件兼容)?Android 是否有任何系统或内核级别的限制,会限制某些功能,或使其与常见的桌面 Linux 发行版不兼容?
编辑:确实,我的问题写得不太好。让我更具体一点:
只要与硬件架构兼容,我可以运行任何本地编译的代码吗?
答案1
回答问题的具体部分:
只要与硬件架构兼容,我可以运行任何本地编译的代码吗?
是的,你可以。但是,即使没有 root 权限,你也可以这样做 - 只要它是APK。APK 可以包含本机编译的代码,无需 root 权限即可安装。要创建包含本机代码的 APK,您可以使用“原生开发套件”(NDK),可以免费下载。
当然,如果本机编译的代码不是以 root 身份运行,则不允许执行某些操作(例如删除操作系统)。如果以 root 身份运行,代码将能够执行几乎所有操作,就像在 Linux 或 Windows 等其他操作系统上一样。
有关 Android 上本机代码的更多信息,另请参阅以下问题:Android NDK 的限制?
答案2
回答你的部分问题,你可以在没有 root 权限的情况下执行此操作。任何 APK 都可以安装。(好吧,不是每个 APK,但这不是重点)
Root 可让您使用特殊权限执行您无法执行的操作。例如,自定义主机文件、备用音频驱动程序或删除通常无法删除的系统分区项目。
就内核而言,根据您想要做的事情,您可能需要编译或刷新具有所需功能的自定义内核。
我不确定你为什么要将 Android 与桌面 Linux 发行版进行比较......
这个答案可能有些模糊,但是恕我直言,您的问题也同样模糊。