Python:检测Android


问题内容

我很惊讶地发现关于该主题的信息很少。我想检测用户是否正在运行Android。我正在使用:

platform.dist()

这样可以完美检测所有操作系统和不同的Linux发行版。但是,在Android上运行时,系统名称始终以“
Linux”返回。有什么方法可以检测Android吗?我不想包括任何第三方模块,因为它必须尽可能地可移植。是否可以在try-
catch中调用某些特定的Android函数?


问题答案:

你可以用Kivy做到这一点

from kivy.utils import platform

if platform == 'android':
    # do something

编辑:

正如我所说,我不能使用任何第三方库

看看Kivy如何实现它

def _get_platform():
    # On Android sys.platform returns 'linux2', so prefer to check the
    # presence of python-for-android environment variables (ANDROID_ARGUMENT
    # or ANDROID_PRIVATE).
    if 'ANDROID_ARGUMENT' in environ:
        return 'android'