如何加载/构建Chrome App / Extension并以编程方式运行

时间:2016-03-11 05:32:28

标签: javascript google-chrome google-chrome-extension

我希望制作一款类似于谷歌自己的Chrome开发者编辑器的Chrome应用程序,这是一款使用网络标准构建的应用程序,用于创建Chrome应用程序/扩展程序

在Chrome开发者编辑器中,您可以在应用内自行运行您创建的Chrome应用/扩展程序。它构建应用程序并执行它们。

是否有针对我想要制作的应用执行此操作的特定API?如果是这样的话它的文件在哪里?

对此主题的任何指导都将不胜感激。

谢谢! -Rick

1 个答案:

答案 0 :(得分:2)

Chrome开发者编辑器已列入chrome.developerPrivate api的白名单。您无法将具有此功能的应用部署到Web商店。

幸运的是,您可以通过加载为解压缩的扩展程序,添加"developerPrivate""management"权限,并将key manifest property设置为其中一个列入白名单的密钥来使用此API。

如果您的用户是Chrome应用/扩展程序开发人员,他们会熟悉加载解压缩的扩展程序,因此您可以要求他们自行访问这些功能并将没有这些功能的版本分发到网上商店。

您可以包含一个导出源的选项,并使用chrome.runtime.getPackageDirectoryEntry()自动插入清单键,并在您的代码中使用chrome.developerPrivate之前检查它是否已定义。

列入白名单的密钥:

  • Chrome Dev Editor: “MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2OvldPjAqgEboHyyZM7GpCMmGMSQ8aExOlQyOhN3C9fDRXqnAN / Ie20TEwD9Eb2CciV3Ru4Gm7PmDnkHzsljD84qLgBdN39FzPGDyViXTS442xTElWRZMZQfJYQpbMpiePL720kTHgLLAcwTgdP9DnvRPrKukIs / U4Y76NFk7NNbsNOc6FWisLJykw2POTB1RR5ZlZrA4Ax1P7kt7qQdomE6i8wy1TA1jDhG8AhEXKRfpyELvJmzyVIyR9uiSHDHCdihiS5oyjADjmmbklvL7Ns0cSAgEX / lWN8UX8r17zoKZzJ0MkmCQ5Nlfql8qUtn2oZXaHztkkAcXCxkq9 / 37QIDAQAB”

  • Spark (dev): “MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiC2CjQDYZcE1Pn8QHpLh1F32QiJqcO63CObY4ulPEHHmIDfIyflB2WXc7D1bDJtHBahkJEtHY4I8wN8gjowgYVKiiqMpwiuV7Evivyf7Qyvg537Kb0aBdGKVFCpk12H / Z9k835BTWZ3t / UK / ZK2r4fwUF06LYWtZ3XS1W5OrV0NTxGF / keX4qidKMDl3pKLNjKPSPl0G3WFEMui + L68VnC2HzCfrpyrC1 / oGGLTa2xg / lkEZhzuUUjWsar8YazZYmVPmZQOjdyls / tGxrVac3IcDaSve40PuKgmmn7H2Gb1h4NKRbDTgBhqmIewQCGpuHMRf / EXNDROhNCx2byStkwIDAQAB”

  • Spark (nightly): “MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXKrcvbi1a1IjFM5COs07Ee9xvPyOSh9dhEF6kwBGjAH6 / 4F7MHOfPk + W04PURi707E8SsS2iCkvrMiJPh4GnrZ3fWqFUzlsAcUljcYbkyorKxglwdZEXWbFgcKVR / uzuzXD8mOcuXRLu0YyVSdEGzhfZ1HkeMQCKEncUCL5ziE4ZkZJ7I8YVhVG + uiROeMg3zjxxSQrYHOfG5HOqmVslRPCfyiRbIHH3JPD0lax5FudngdKy0 + 1nkkqVJCpRSf75cRRnxGPjdEvNzTEFmf5oGFxSVs7iXoVQvNXB35Qfyw5rV6N + JyERdu6a7xEnz9lbw41m / noKInlfP + uBQuaQIDAQAB”
  • Chrome Apps & Extensions Developer Tool: “MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDV / GMX7sjLe3ceUizalvfZK0qhsWnXcjJ3cCbYvXFo43Q2F7SZM8 / 0roex0wSpNRSO1j9c / m7YXLYBAOiy21ERRJEVEIvOvWp1LLeoBSsbQnnhSPKInqUrkA8fMRCqI0gHRUK3K7dIiOC2A7jkWUMs4DqRiQSkntUUGzVIoY6OYQIDAQAB”
  • Code Editor: “MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDIhi5zNAGD4SvQyCSVCj7KIt4w3OX0r9S7VFdxtzhagQVm58Kuz5XoJsbIhISEHjukldlZQZn9s0e9x1aK / s48ZJMe5KHyv6o0pYsslPEMro3aZG8bkPW9HMUMHe9uhyhw2DT90UMzWrOatOdj2QI41J + 9Q4eP2TgXBTfJstE5QQIDAQAB”