Chrome 扩展程序——我的源代码可供用户使用吗?

2024-02-05

我即将向 Chrome 网上商店发布我的第一个 Chrome 扩展。他们希望将代码压缩并上传。一旦通过批准,如果我理解正确的话,它将作为 .crx 文件提供给用户。

但这些 crx 文件是带有 .crx 扩展名的简单 zip 文件,对吧?如果这样的话,用户是不是就无法获得源代码了?

这意味着,我可能会在网上商店中看到我的源代码的 100 个以上版本与我的扩展一起出现。 :(

有没有办法阻止用户获取源代码?


为您的扩展提供源代码是回馈开源社区的最简单方法。由于您至少使用一个开源应用程序(Chrome),您应该考虑将您的项目开源以偿还债务。

您还应该了解 GitHub/Bitbucket 个人资料是开发人员组合。许多公司在提供工作机会之前都会考虑这些。如今,每个优秀的开发人员都拥有大量的开源项目。这使任何人都可以了解他们编写的代码有多好,他们与其他开发人员的协作程度如何,他们对细节的关注程度等等。

最后但并非最不重要的一点是,如果您的扩展确实很好,如果您不断维护它并开发新功能并且您的用户喜欢使用它,您可以确信它会保护自己免受任何类型的复制。如果您开源代码,您肯定会找到一些合作者,他们将提供翻译、新功能并帮助您修复错误。

不管怎样,你的问题的答案是这样的:如果你担心有人会使用你的 JavaScript 代码,你可以混淆它 https://stackoverflow.com/questions/194397/how-can-i-obfuscate-javascript。当然,混淆代码可以是美化的 http://jsbeautifier.org/对于那些渴望阅读它但没有注释和有意义的变量名的人来说,这样做会很痛苦。其他解决方案是写一个NPAPI插件 http://developer.chrome.com/extensions/npapi.html or 本机客户端应用程序 https://developers.google.com/native-client/overview因为它们允许您编译部分代码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Chrome 扩展程序——我的源代码可供用户使用吗? 的相关文章

随机推荐

  • Apache 无法在 OSX 中的 MAMP 中启动(但 MySQL 可以工作)

    我已经使用 MAMP 工作了几个月 最近安装了 PostgreSQL 它还建议安装 Apache 我这样做是为了确保 PostgreSQL 正常工作 然后我卸载了 PostgreSQL 和 apache 构建并尝试重新启动 MAMP 它启动
  • 如何为 Android 制作局域网唤醒?

    你能告诉我 如何为Android制作Wake On Lan应用程序吗 我在谷歌上搜索了两周 尝试了一切 从另一个唤醒局域网应用程序下载了源代码 并尝试找到用于制作和发送魔术包的代码 看起来其他所有代码都可以工作 但是当我在我的应用程序中使用
  • 初级 Java:变量作用域问题

    我正在练习我的java书中的一些工作 并且在获取使用变量进行计算的方法时遇到问题 请注意 这是一项正在进行的工作 我目前只是试图让它使用 CircleArea 方法来计算圆的面积 这是必要的代码 public class Geometry
  • Laravel“目标 [Illuminate\Contracts\Bus\Dispatcher] 不可实例化。”

    正如标题本身所说 我遇到了以下问题 Target Illuminate Contracts Bus Dispatcher is not instantiable 我正在尝试使用自定义脚本并包含默认的 Laravel 类 require on
  • POST 请求 Fetch API 防止重定向

    所以我想制作一个纯html和javascript表单并将其提交到服务器 这是我的 html 表单代码
  • wxPython:当我关闭框架时,单选按钮如何记住我的选择

    您好 我有一个主框架和一个按钮 按下该按钮时会打开第二个框架 第二个框架有 6 个单选按钮 我的问题是 当我选择与已选择的单选按钮不同的单选按钮并关闭框架时 当我再次打开它 不关闭整个程序 时 为什么选择第一个单选按钮以及如何保留我的新选择
  • 不要将文字作为本地化参数传递

    在我的项目 Windows Phone 8 1 应用程序 上运行代码分析时 出现以下警告 CA1303 不要将文字作为本地化参数传递 方法 Common TranslateError String 将文字字符串作为调用 XDocument
  • 使用 STL 在 C++ 中实现图和 BFS

    以下是我编写的代码 include
  • 高效的数据结构,用于快速随机访问、搜索、插入和删除

    我正在寻找一种数据结构 或多个结构 它可以让我保留一个有序的整数列表 没有重复项 并且索引和值在同一范围内 我需要四个主要操作才能高效 按重要性的粗略顺序排列 从给定索引中获取值 查找给定值的索引 在给定索引处插入值 删除给定索引处的值 使
  • 如何在 ASP.NET 网页中实现 html 表单 - ASP.NET 中的两种表单问题

    请看这个html代码 div class section cc content 5 style display none div class pad content div class right grid 1 h1 Contact Add
  • AngularJS 重复 http 请求

    我正在使用 AngularJS 做一些接口 并观察 Chrome 控制台 我检测到对 API 的每个 http 请求都是重复的 有什么办法可以避免这种情况吗 这是我的简化代码 http jsonp http APIURL com api c
  • 使用 gcc 编译 DLL

    Sooooo我正在写一个脚本解释器 基本上 我希望将一些类和函数存储在 DLL 中 但我希望 DLL 在链接到它的程序中查找函数 例如 program dll send code to dll gt parse code v code co
  • 使用 C# 配置 Wifi 设置

    如何使用 C 紧凑框架 为 Win Mobile 应用程序配置 Wifi 设置 所以交易是 配置网络 隐藏APP的SSID 使用 TKIP 进行 WPA 身份验证 强制用户和密码 不会提示最终用户进行身份验证 看看智能设备框架 http w
  • Android Studio 3 中的“将项目与 gradle 文件同步”按钮在哪里?

    This button disappeared from a new 3 1 version of AS Toolbar Before it showed as 现在不见了 EDIT 他们喜欢继续使用工具栏 从 Android Studio
  • Alertmanager,不同的警报规则有不同的间隔

    我正在使用alertmanager来获取prometheus指标的警报 我对不同的指标有不同的警报规则 是否可以为每个警报规则设置不同的时间间隔 例如对于metric1 我有rule1 我需要每天检查此规则间隔 对于 metric2 我有规
  • EAV 数据库架构

    我有一个包含超过 100K 条记录的数据库 很多类别和很多项目 每个类别具有不同的属性 一切都存储在 EAV 中 如果我尝试打破这个方案并为任何类别创建一个唯一的表 我必须避免什么吗 是的 我知道我可能会有很多表 并且需要更改它们 如果我想
  • Genymotion 错误:在 Yosemite 上“无法加载 VirtualBox 引擎”。已安装 VirtualBox

    我有一台配备 OS X Yosemite 的 Macbook Pro 13 英寸 内存 8 GB 显卡 Intel Iris Graphics 6100 1536 MB 我正在尝试将 Genymotion 设置为 Android 模拟器 我
  • 将一列 int64 (YYYYMMDDHHMMSS) 转换为不带分隔符的 datetime64

    这是我的 pandas 数据框中的数据 我想转换dateTime列成日期时间64这样我就可以检查是否重复fileName存在然后找到最新的文件dateTime 正如你所看到的 这里的日期时间格式是YYYYMMDDDHHMMSS没有分隔符 f
  • jQuery 创建整个 DOM 结构

    TOP TABLE var divTop div className dynamicTableTop html p options name p appendTo obj Create div var divAO div className
  • Chrome 扩展程序——我的源代码可供用户使用吗?

    我即将向 Chrome 网上商店发布我的第一个 Chrome 扩展 他们希望将代码压缩并上传 一旦通过批准 如果我理解正确的话 它将作为 crx 文件提供给用户 但这些 crx 文件是带有 crx 扩展名的简单 zip 文件 对吧 如果这样