You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python打开Chromebook设备上的应用程序?

实现步骤

第一步:确认对应应用的启动命令

ChromeOS的Linux容器支持直接调用系统级的应用(包括原生Chrome应用、PWA、安卓应用),你可以先在Linux终端中测试启动命令,确认可用后再写入Python代码:

  • 若是PWA/网页应用:直接使用xdg-open 应用对应的网页地址即可,ChromeOS会自动调用已安装的PWA打开,比如打开Messenger PWA的命令是xdg-open https://www.messenger.com
  • 若是Chrome原生应用:可通过检索desktop文件获取启动命令,执行以下命令查找对应应用的配置:
    grep -i "应用关键词(如messenger)" /usr/share/applications/*.desktop ~/.local/share/applications/*.desktop
    找到对应文件后查看Exec=开头的行,后面的内容就是启动命令
  • 若是安卓应用:先开启ChromeOS的ADB调试,执行adb shell pm list packages | grep 应用关键词获取应用包名,再打开应用后执行adb shell dumpsys window | grep mCurrentFocus获取启动Activity,最终启动命令格式为am start -n 包名/Activity名

第二步:编写Python调用逻辑

使用Python标准库的subprocess模块执行系统命令即可,示例代码如下:

import subprocess

# 配置命令与启动指令的映射关系,可自行扩展
APP_LAUNCH_MAP = {
    "messenger": "xdg-open https://www.messenger.com",
    "chrome": "google-chrome",
    "local_files": "xdg-open ~/Documents"
}

def launch_app(command: str) -> str:
    if command not in APP_LAUNCH_MAP:
        return "未匹配到对应应用"
    try:
        # 后台执行启动命令,不阻塞主程序运行
        subprocess.Popen(
            APP_LAUNCH_MAP[command],
            shell=True,
            stdout=subprocess.DEVNULL,
            stderr=subprocess.DEVNULL
        )
        return "应用已启动"
    except Exception as e:
        return f"启动失败:{str(e)}"

# 机器人接收命令后调用该函数即可,比如接收用户输入的messenger
# print(launch_app("messenger"))

注意事项

  • 所有启动命令请先在Linux终端中手动执行验证,确认可以正常打开应用后再写入映射表
  • 若调用安卓应用,需要先在ChromeOS设置中开启Linux对ADB的访问权限
  • 不需要额外安装第三方依赖,Python标准库即可完成所有操作

内容的提问来源于stack exchange,提问作者Andrew Killillay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 13:24:03