标签: google-chrome-app

Chrome扩展程序消息传递:未发送响应

我试图在内容脚本和扩展名之间传递消息

这是我在content-script中的内容

chrome.runtime.sendMessage({type: "getUrls"}, function(response) {
  console.log(response)
});
Run Code Online (Sandbox Code Playgroud)

在我的后台脚本中

chrome.runtime.onMessage.addListener(
  function(request, sender, sendResponse) {
    if (request.type == "getUrls"){
      getUrls(request, sender, sendResponse)
    }
});

function getUrls(request, sender, sendResponse){
  var resp = sendResponse;
  $.ajax({
    url: "http://localhost:3000/urls",
    method: 'GET',
    success: function(d){
      resp({urls: d})
    }
  });

}
Run Code Online (Sandbox Code Playgroud)

现在,如果我在getUrls函数中的ajax调用之前发送响应,则响应成功发送,但是当我发送响应时,在ajax调用的success方法中它不发送它,当我进入调试时我可以看到sendResponse函数代码中的端口为null .

javascript google-chrome google-chrome-extension google-chrome-app

146
推荐指数
2
解决办法
5万
查看次数

Chrome应用和扩展程序之间的差异

Chrome Apps和Extensions有什么区别?

对于您无法使用扩展程序执行的应用程序,您可以做些什么,反之亦然?

google-chrome google-chrome-extension google-chrome-app

66
推荐指数
4
解决办法
4万
查看次数

Chrome App webview和触摸滚动传播

我很高兴用Chrome打包的应用程序替换Windows 8 Metro应用程序.目前,它需要模仿Metro应用程序的外观和感觉.主页面包含多个水平排列的webview,可以进行大量的水平滚动.尝试使用触摸设备水平滚动时遇到问题.如果滚动手势在webview上开始,则它正在捕获滚动事件并阻止主机滚动.所有Web视图都隐藏了溢出功能.由于它们构成了页面上的大部分内容,因此主机的有效滚动目标是有限的.

web视图内容是互动的,所以我不能逃脱放置一个透明覆盖在滚动内容捕获事件,至少在没有一些方法来传播的点击次数/触及通过对网页视图自己.

有关如何实现这一目标的任何想法?

谢谢你的帮助!

html javascript webview google-chrome-app

48
推荐指数
1
解决办法
1651
查看次数

如何更改chrome打包的应用程序ID或者为什么我们需要manifest.json中的关键字段?

我正在使用一次性Chrome钱包付款为chrome商店开发打包应用程序.对于我的应用程序,我需要在运行时检查用户是否购买了应用程序,以决定它是演示功能还是完整功能.

根据chrome identity API文档:

要使应用程序ID保持不变,您需要将已安装的manifest.json中的密钥复制到源清单.

我有2个关于此程序的问题:

1)在什么条件下我的申请的ID可能会改变?我试图重新安装应用程序并进行更新,但应用程序ID保持不变..如果没有办法更改应用程序ID,为什么我需要此程序?

2)如何将带有manifest.json(包含"key"字段)的zip存档上传到chrome仪表板?问题是上传者向我抛出错误:

发生错误:无法处理您的商品.

清单中不允许使用关键字段.

google-chrome chromium google-chrome-extension google-chrome-devtools google-chrome-app

47
推荐指数
2
解决办法
3万
查看次数

Chrome DevTools:在潜在的内存崩溃之前暂停

在最新的Chrome DevTools中,我可以看到一个新信息:

在此输入图像描述

现在,我不确定如何使用这些信息.它似乎随机出现在应用程序中.如何调试应用程序以避免可能的内存不足崩溃?我检查了任务管理器,当这个信息出现时,应用程序使用大约55K内存,在这个应用程序的情况下是非常低的(当它计算一些数据时,它可以是更高的内存消耗).

所以我想知道这些信息是否准确并且存在崩溃的风险.如果是这样,我该怎么办呢?

javascript google-chrome google-chrome-app

35
推荐指数
2
解决办法
2万
查看次数

Chrome应用中的内容安全政策

我的Chrome应用有以下清单:

{
    "name": ",
    "version": "1.0.3",
    "manifest_version": 2,
    "description": "Chrome Extension for.",
    "icons": {
        "16": "images/test.png",
        "19": "images/test.png",
        "256": "images/test.png"
    },
    "app": {
        "background": {
            "scripts": [
                "background.js"
            ]
        }
    },

    "sandbox": {
        "js": [
            "lib/test-api.js"
        ]
    },
    "permissions": [
        "<all_urls>",
        "notifications",
        "storage",
        "videoCapture"
    ]
}
Run Code Online (Sandbox Code Playgroud)

我有一个运行的脚本文件eval.我已经阅读了有关CSP和沙盒的内容,但我仍然收到此错误:

拒绝将字符串评估为JavaScript,因为'unsafe-eval'不是以下内容安全策略指令中允许的脚本源:"default-src'self'chrome-extension-resource:".请注意,'script-src'未明确设置,因此'default-src'用作后备.

javascript google-chrome manifest content-security-policy google-chrome-app

33
推荐指数
2
解决办法
4万
查看次数

在Windows上以全屏模式运行chrome

我想配置我的计算机以启动Google Chrome Windows启动.它应该以全屏模式启动并打开一些网页.

我尝试使用以下命令行运行Chrome:

chrome.exe --start-fullscreen --app=https://google.com
Run Code Online (Sandbox Code Playgroud)

但Chrome在窗口模式下打开,而不是在全屏模式下打开.

有没有办法在全屏模式下运行chrome?

google-chrome google-chrome-app

31
推荐指数
3
解决办法
18万
查看次数

无法从此网站添加应用,扩展程序和脚本

我正在尝试使用rib.crxhttps://01.org/rapid-interface-builder/downloads/2012/rib-preview-1-chrome-extension下载的文件将Rapid Interface Builder扩展添加到chrome

不幸的是,每次我crx用chrome 打开文件时都会出现以下错误:

无法从此网站添加应用,扩展程序和脚本.

有想法该怎么解决这个吗?

google-chrome google-chrome-extension crx google-chrome-app

27
推荐指数
3
解决办法
6万
查看次数

在Chrome包应用中评估

我想创建一个包app chrome扩展,以允许用户编写和执行javascript代码(如javascript控制台).

我想使用该eval()函数来执行JS代码.

eval从chrome扩展调用时,经典的javascript 函数会抛出错误:

未捕获的错误:对于此上下文不允许从字符串生成代码

eval在chrome扩展程序中使用,人们需要使用沙箱,但是当我在清单中编写沙箱时,我收到此错误:

尝试安装此扩展时出现警告:指定的包类型(主题,应用程序等)不允许使用"sandbox".

UPDATE

根据这个问题,包应用程序不支持沙箱,所以我有两个问题:

  1. 还有其他方法可以代替eval()吗?

  2. eval没有沙盒可以使用吗?(我想可能不是出于安全考虑?)

javascript google-chrome eval google-chrome-extension google-chrome-app

26
推荐指数
2
解决办法
1万
查看次数

在Chrome打包应用和Chrome扩展程序之间进行通信?

我需要结合仅在Chrome打包应用(访问syncFileSystem)中提供的功能和仅在Chrome扩展中可用的功能(将脚本注入第三方网站).

似乎打包应用程序和扩展程序都无法实现这两个目标,所以我现在正在考虑尝试使用单独的打包应用程序和扩展程序进行通信来实现我所追求的目标.

我看到Chrome的文档解释了如何2个扩展可以通过沟通chrome.runtime.onMessageExternal.addListenerchrome.runtime.sendMessage,但没有关于打包应用程序和通信扩展.

有谁知道这是否允许?那里有文件或工作实例吗?

javascript google-chrome google-chrome-extension google-chrome-app

26
推荐指数
1
解决办法
5848
查看次数