gpt4 book ai didi

email - Chrome 扩展程序需要手动重新激活才能出现

转载 作者:行者123 更新时间:2023-12-02 08:50:56 31 4
gpt4 key购买 nike

我们已经构建了一个 Chrome 扩展程序,通过在 Gmail 中直接在其下方插入电子邮件的揭穿来对抗链式电子邮件。

问题是当用户添加扩展时,它不会出现,直到您返回 chrome://extensions/并停用,然后重新激活浏览器扩展。我不确定我们需要做些什么来解决这个问题。

完成此操作后,扩展工作。

如果您满足以下条件,则可以复制该问题:

  • 从以下位置下载代码的 ZIP
    http://github.com/dkang9322/chrome_extension
  • 解压扩展下载
  • 转到 chrome://extensions/并在顶部激活开发者模式
    扩展页面右侧
  • 点击“加载解压扩展”并选择解压后的扩展
    驱动器中的目录

  • 这将安装扩展程序,但在您导航回扩展程序页面并取消激活,然后重新激活扩展程序之前,它不会出现在您的 Gmail 中。然后,如果您转到电子邮件,您会看到它。

    非常感谢您随时可能需要对此进行调查。

    最佳答案

    刷新您想要运行内容脚本的选项卡应该可以解决问题,但是如果您不想要求您可以将内容脚本“按需”注入(inject)到需要它的选项卡中扩展程序已启动,如下所示:

    // Injects content_script.js into tab with id 1234
    injectScriptInTab('content_script.js', 1234);

    function injectScriptInTab(url, tabId) {
    readFile(url, function(scriptBody) {
    chrome.tabs.executeScript(tabId, { code: scriptBody });
    });
    }

    function readFile(url, callback) {
    var xhr = new XMLHttpRequest();
    try {
    xhr.onreadystatechange = function(){
    if (xhr.readyState != 4) {
    return;
    }

    if (xhr.responseText) {
    callback(xhr.responseText);
    }
    else {
    throw new Error('No data returned for readFile: ' + url);
    }
    }
    xhr.onerror = function(error) {
    console.error(error);
    }
    xhr.open("GET", url, true);
    xhr.send(null);
    } catch(e) {
    console.error(e);
    }
    }

    为了保持理智,您可能希望在 content_script.js 中添加一些内容,以防止脚本在给定选项卡中可能多次执行,例如
    if (window.loadedMyContentScript) return;
    window.loadedMyContentScript = true;
    /* remainder of content script */

    关于email - Chrome 扩展程序需要手动重新激活才能出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12290281/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com