Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.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
Javascript 为什么带有UI的chrome扩展的本机消息主机会挂起?_Javascript_Macos_Google Chrome Extension_Keychain - Fatal编程技术网

Javascript 为什么带有UI的chrome扩展的本机消息主机会挂起?

Javascript 为什么带有UI的chrome扩展的本机消息主机会挂起?,javascript,macos,google-chrome-extension,keychain,Javascript,Macos,Google Chrome Extension,Keychain,我有一个用于chrome扩展的本机消息传递主机,可以从OSX中的钥匙链读取(使用)。当打开时,我调用chrome.runtime.sendNativeMessage。当钥匙链已解锁时,本机程序运行正常,并在标准输出时返回响应。当钥匙链被锁定时会出现问题,因此OS X会提示用户使用UI警报解锁钥匙链(类似于)。问题是本机程序在调用时挂起,提示不会立即出现。该提示仅在我关闭浏览器操作弹出窗口后出现,并且仅短暂出现(不到一秒钟)。我知道本机应用程序在等待UI提示时正在运行,因为我添加了启动和退出时的日

我有一个用于chrome扩展的本机消息传递主机,可以从OSX中的钥匙链读取(使用)。当打开时,我调用chrome.runtime.sendNativeMessage。当钥匙链已解锁时,本机程序运行正常,并在标准输出时返回响应。当钥匙链被锁定时会出现问题,因此OS X会提示用户使用UI警报解锁钥匙链(类似于)。问题是本机程序在调用时挂起,提示不会立即出现。该提示仅在我关闭浏览器操作弹出窗口后出现,并且仅短暂出现(不到一秒钟)。我知道本机应用程序在等待UI提示时正在运行,因为我添加了启动和退出时的日志(我还检查了
ps

有人知道本机应用程序可能挂起的原因吗?我认为可能是UI窗口导致了一些东西被阻塞,所以我尝试在本机应用程序中分叉一个新线程来打开密钥链。不幸的是,这也不起作用

当我直接从命令行运行程序时,我不会遇到任何这些问题,并且会立即出现解锁钥匙链的提示


另外,我也试过chrome.runtime.connectNative,但也不起作用

事实证明,我在中用于读取标准的函数正在等待EOF,因此在某些情况下,本机应用程序只是无限期地挂起