无法在google chrome应用中获取system.display信息。

问题描述 投票:1回答:3

我是一名创建chrome应用程序的新手,我正试图创建两个窗口,在电脑的每个显示器上各创建一个。 我试图使用chrome.system.display.getInfo()来获取显示器的信息,但它只是返回未定义。

我的manifest.json有system.display的权限,一旦我创建了一个窗口,我就打开控制台并输入以下内容。

chrome.system.display.getInfo(function(displayInfo) { console.log(displayInfo); });

正如我之前说的,它只是返回undefined。 根据我在文档中的理解,参数应该返回一个包含计算机上显示信息的对象数组,但它只是返回undefined。

如果我在控制台输入chrome.system.display,我可以看到它返回了一个对象(在我在manifest.json中输入权限之前没有),所以我不知道我错过了什么。

google-chrome-app
3个回答
1
投票

在没有看到更多细节的情况下,很难知道是什么问题。我注意到一件事,就是没有使用system.display的示例,所以我更新了现有的系统信息示例以包含这个API。

我成功地做到了这一点,没有遇到任何问题。你应该下载并尝试一下这个示例 此处 并将其作为你的应用程序的起点。

如果你仍然有问题,请在这里再问一次,并提供更多的细节(即更多的代码)。


0
投票

听起来像是一个bug,把它作为一个bug提交到 http:/crbug.com. 假设你一直在尝试用chrome版本30或更高版本(根据文档)。


0
投票

试试这个

在您的功能中

async getMemoryInfo() {
    return await new Promise((resolve, reject) => {
        chrome.system.cpu.getInfo(function(memory) {
            console.log( 'return memory', memory)
            resolve( memory );
        });
    }); }

当你调用该函数时,声明async并等待许诺

this.secret = await this.secureStorage.getMemoryInfo();
© www.soinside.com 2019 - 2024. All rights reserved.