
VidPilot 最近一直没有发布新的版本,因为在憋个大招,做积分系统和接入 Strip 平台。满怀欢喜 Coding 完之后,提交 Chrome Web Store 审核,早上打开邮件,发现被拒绝了
拒绝的理由:Manifest V3 产品包含远程托管代码。
包含远程托管代码,这是在各大应用平台( Chrome Web Store\App Store )都是明令禁止,相当于红线,昨天还和一个独立开发者朋友聊到,他的第一个产品就是因为包含远程代码,产品被下架,开发者账号也被封了
于是我赶紧排查问题,不敢有一丝懈怠
代码段:App.71f446dd.js: "https://" + this.region + "-assets." + r;
我在 bundle 文件中搜索上面关键词 this.region 。后来发现这是 posthog 引入导致的,有查阅了 posthog 相关文档 Using PostHog for browser extensions 。发现在浏览器插件中引入 posthog 不能照搬 web 端,需要一些特殊处理,最重要的是设置 disable_external_dependency_loading 为 true 。
找到问题原因后,开始 Vibe Coding ,让 GitHub Copilot 完全按照 Using PostHog for browser extensions 文档来接入 posthog ,完成后也不忘提醒 Copilot 校验下是否还有 this.regin 等危险代码
结果发现依然存在,思考下,应该不再包含动态加载代码了,但是 Chrome Web Store 审核很有可能是做静态文件匹配,依然后被拒风险,担心产品被下架,于是尝试更加稳妥的方案
服务端提供 track 接口,然后浏览器插件通过 track 接口,在服务端进行 posthog 上报,虽然麻烦一点,因为还要防止重复 identify 和 align ( align 不是幂等)。所以有搞了一个 Cloudflare KV 来防止重复 identify
最终完成后,又提审了,希望这次能过~
BTW ,如果大家对 Stripe 账号注册、接入感兴趣,欢迎留言,下次分享 Stripe 个人账号注册和接入流程
1 56way 6 天前 个人怎么申请 Stripe 账号 啊,我有香港卡。 |
3 penzi 6 天前 除非已上架的插件明确有恶意行为,不会因为远程代码下架。 |
5 japhetjiu699 3 天前 @ransixi #2 更新踢我一脚,学习学习 |