Chrome扩展程序--我的源代码会对用户可见吗?

4
我即将发布我的第一个Chrome扩展程序到Chrome Web Store。他们要求将代码压缩并上传。一旦审核通过,用户就可以获得.crx文件,如果我理解正确的话。
但是这些.crx文件只是带有.crx扩展名的普通zip文件,对吗?如果是这样,用户不会获取到源代码吗?
这意味着,我的源代码可能会在网络商店中出现100个以上的版本,与我的扩展程序一起浮动。:(
有没有办法防止用户获取源代码?

@BasileStarynkevitch 你的意思是像在GitHub或其他代码库上托管它吗?那样会像Chrome Webstore一样获得足够的曝光率吗? - Ivin
是的,通过例如GitHub发布源代码和通过Chrome商店发布二进制应用程序... - Basile Starynkevitch
好的,我没有注意到。我的需求是免费提供它,但保留源代码。 - Ivin
@KonradDzwinel 感谢你的积极推动!:) 你知道这样的扩展是如何托管的吗?我的意思是开发者如何保护他们的源代码? - Ivin
1
从我所看到的情况来看,代码主要是通过混淆来进行“保护”的。此外,一些扩展程序只在 CWS 中放置了一个最小且非常简单的 JS 文件,而其余的代码(包括大部分逻辑)则在扩展程序运行时从外部服务器加载。这使得理解其中发生的事情变得更加困难。 - Konrad Dzwinel
显示剩余6条评论
1个回答

6
提供源代码给你的扩展程序是向开源社区回馈的最简单方式。由于你至少使用了一个开源应用程序(Chrome),你应该考虑将你的项目开源,以此来还债。
你还应该明白,GitHub/Bitbucket档案是开发人员的作品集。许多公司在提供工作前会查看这些档案。如今,每个优秀的开发者都有一份广泛的开源项目列表。这使得任何人都可以了解他们编写的代码质量、他们与其他开发者的协作能力、他们对细节的关注程度等等。
最后但并非最不重要的是,如果你的扩展程序真的很好,如果你经常维护它并开发新功能,而且你的用户喜欢使用它,那么你可以确信它会自我保护,避免任何形式的复制。如果你开源你的代码,你肯定会找到一些合作者,他们会提供翻译、新功能,并帮助你修复漏洞。
无论如何,对于你的问题的答案是:如果你担心有人会使用你的JavaScript代码,你可以混淆它。当然,混淆的代码可以被那些渴望阅读它的人美化,但是没有注释和有意义的变量名,这将是一件痛苦的事情。另一个解决方案是编写NPAPI插件本地客户端应用程序,因为这些允许你编译代码的部分。

非常感谢。考虑到好处,我可能会将其公开托管。感谢您指出它们! :) - Ivin
Chrome扩展程序中允许混淆代码吗? - Hardik Vinzava
@HardikVinzava,如果他们不允许的话,我会感到惊讶,考虑到有许多付费扩展程序,这些扩展程序肯定不会完全共享它们的代码。 - Taki7o7
1
@Taki7o7,他们不允许:( - Hardik Vinzava

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接