NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

想要出售你的 CS 扩展?

  • 2011-08-12
  • 本文字数:2956 字

    阅读完需:约 10 分钟

目录

要求

预备知识

这篇文章假设你有 CS 套件的基于 Flash 可扩展性的基本知识。

本文讨论第三方开发者如何使用已有的技术来分发和出售 CS 扩展包。

应用商店

App 商店的普遍概念是和移动元件相关,但是最近几个月,它开始扩展到了机遇 web 技术的应用(大部分在浏览器的 context 里面运行)。 在这个部分,我们讨论如何使用两个这样的店铺,Chrome Web 商店和 Intel AppUp,来帮你出售和分发 CS Extension。

Chrome web store

Chrome web 商店 * 是一个在线的 app,扩展包,还有在 Google Chrome 网页浏览器里面使用的主题包的交易场所,为用户提供了一个不一样的,交互更强的体验。

在我们的实验中,我们主要是开发一个 Google Chrome 浏览器的应用,这个应用以一个分部机制的扩展包的角色来运行的。可以 为 Chrome Web Store 开发的应用* 可以被 Hosted* 或者 打包 * 。在所有案例中,应用架构就像一个“普通的网站”,除了一个 CRX manifest 文件。Hosted 的应用都被描述成一个普通的 web 应用,只不过在打包好的待售的“可安装 web 应用”的时候多了一点点元数据。这意味着打包好的应用可以离线工作,并且可以让 Google Extension APIs 使用。

那这与出售 CS 扩展有何关系?打包的应用可以包含额外的文件,并且可以用以下代码指向它们:

复制代码
var zxpLoc = chrome.extension.getURL("HelloWorld.zxp");

通过可以纳入我们的 CS 扩展包作为额外文件,我们可以:

  • 在初始化页面的时候下载 ZXP 扩展包。
  • 在页面上有下载链接。

图 1. 包含了一个 CS Extension 的打包好的 Chrome App 的概览。

为了让大家有个概览,工作流如下:

  1. 导航至 Google Chrome Web Store。
  2. 找到你的 Chrome App。
  3. 付钱然后安装应用。
  4. 导航至你的应用的主页 (HTML 文件包含在 app 文件夹里面;图一中的 index.html 就是了)。
  5. 激活 ZXP 的下载。

图 2 展示了 ZXP 下载完成。 当用户点击左下角的按钮的时候,Adobe Extension Manager 开始运作,安装这个扩展包。

图 2. 从 Google Chrome 浏览器的一个 Packaged App 里下载。

在这个范例中,ZXP 可以免费下载和分享。 为了保护你的扩展包被通过不正当的手段分发,我们正在关注另一种技术, Netscape Plugin API (后面的部分讨论)。

Intel AppUp

AppUp* 是 Intel 的应用分发 商店。它关注分发应用至基于 Intel?? Atom?? 处理器的移动存储设备。 AppUp SDK* 支持很多语言,包括 C/C++,.NET, Java,HTML5 和 Adobe AIR. 在我们的实验中,我们使用 Adobe AIR SDK* 提交一个包含 CS 扩展包的应用。当下载好 AIR 应用的时候,它启动了 Adobe Extension Manager 并安装 CS 扩展包.

你可以使用 C/C++, .NET 和 Java 库来执行同样的工作流。

总结

这个部分介绍了一些扩展他们的用户群到移动设施内容分发领域之外的应用商店。我们展示了你可以怎样使用这些来增加你的 CS 扩展包的可用性,并且避免了一些基础设施的花费。以下范例是未经优化的解决方案,但是给你说明了你该怎么将这些技术整合到你的配置工作流里面去。

Netscape 插件 API

Netscape Plugin API (NPAPI) 是一个插件结构,开始为 Netscape 家族的浏览器开发的。然后它逐步演变成了包含跨平台支持,并且用在大量的浏览器中。 最明显的异常是 Windows 的 IE,它在 5.5 版中不屑于支持,但是现在却用 ActiveX。

此种架构让开发者可以在浏览器中提供本地代码去处理不支持的内容类型。 比较知名的一个范例是用于 PDF 文件查看; 在不用下载文件到本地的情况下, PDF 插件可以让你在浏览器的 context 里面查看文档。

同样的工作流用于查看 Flash 内容。浏览器与插件之间的通讯是使用 JavaScript 建立的, 里面的很多方法是本地代码执行的。

在为 Chrome Web Store* Intel AppUp* 制作应用的时候,你可能注意到了跨浏览器方面的或者代码的重用性的贫乏。我们已经打包了为 AppUp 商店开发 AIR 应用为 Chrome 打包应用,尽管我们在本范例中没有做这个。

我们在 Netscape 插件方面的兴趣并不止于它的跨平台能力,也同样在于它取得安装流程的控制权的能力。如我们在 Chrome web 商店范例中所知,一旦 ZXP 文件下载完成,没有任何限制可以阻止用户分享 ZXP。使用 NPAPI,我们在网页浏览器 context 的下载体验中有更好的控制权。

原型

我们决定开发一个支持 ZXP 内容类型的 Netscape 插件。我们用 Chrome 和 Firefox 来做试验,我们嵌入一个内容类型 x-zxp-helloworld 到一个简单的 HTML 页面:

复制代码
<embed type='application/x-zxp-helloworld' hidden='true' id='plugin0' />

使用 JavaScript, 我们使用 Netscape 插件通讯以传送文件内容。 一旦文件加载完成,我们通过本地插件启动 Adobe Extension Manager 安装 CS 扩展包。

总结

使用这个工作流,我们可以改善安全性,因为在启动 Adobe Extension Manager 和清理任务(包括 ZXP 包文件的移除)方面,我们有了更好的控制权。

例如,我们可以使用一个加密包,或者一旦 CS 扩展包安装完成简单的移除下载内容。两种手法都可以组织不合法的分发。

这些都是执行 Netscape 插件的比较明显的优点。我们的范例显示,关联性的简化,你可以怎样相对简单的分发你的扩展包到一个已有的提供支付选择的途径。

Web 服务

对于另一个使用 CS 扩展包赚钱的不同途径,我们关注了一些可用的 Payment Web Services ( 网络支付服务) 例如 Paypal* Google Checkout* 。这个改变了我们使用扩展包赚钱的观点。我们要求用户在第一次下载 CS 应用里面的扩展包的时候要求用户支付,代替使用 Web Store 期望下载后支付。

这个方法意味着我们可以整合一系列的网络支付服务,且不受限于一个供应商。所有的支付逻辑都包含在扩展包内。同样,我们也可以使用 ActionScript 代替需求额外的本地扩展,JavaScript,和 HTML。另外,他允许我们提供不同的选项,例如试用 subscriptions 和免费 / premium 版。

实际上的订购工作流体验取决于你实际上连接到的系统。我们的原型实现在扩展包内使用了 HTML 对象 类嵌入浏览器工作流。

复制代码
<mx:HTML height="100%" width="100%" id="htmlField" />

一旦扩展包初始化完成,htmlField 就派发正确的 HTML 去和网络支付服务交互。当然,你也可以在你的应用里面允许使用扩展包之前,打开一个页面浏览器来订购。

总结

这个可选方法出售扩展包并不要求一个很贵的分发工作流,或者一个 Web Store 的提交。尽管如此,除非你有你自己的支付服务,你必须调整供应商的支付工作流;这个也许意味着打开一个浏览器,或者在你的应用内容里面展示供应商的 UI。

延伸阅读

本文是 Adobe 关于使用 CS 扩展包赚钱这个主题的调查。我们验证了一些已有的第三方可用的帮你用 CS 扩展包赚钱的技术,同时也提供了一些指导给你指引。也许你想要使用一个或者这些范例中的多个,或者开发一个不同的途径。

我们了解使用 CS 扩展包赚钱的开发者和用户基础的重要。我们将持续研究这个空间,和你分享我们的发现和想法。 敬请关注 CS Extension Builder 随时更新。

本文中讨论过的相关技术的更多信息请关注:

本文未讨论的其他技术如下:


本文基于 Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License* 协议发布。

查看原文:想要出售你的 CS 扩展?

2011-08-12 00:23708

评论

发布
暂无评论
发现更多内容

爱奇艺:基于龙蜥与 Koordinator 在离线混部的实践解析 | 龙蜥技术

OpenAnolis小助手

开源 cpu 爱奇艺 混部 龙蜥操作系统

火山引擎边缘云荣获2022全球分布式云大会两项大奖

火山引擎边缘云

云原生 边缘计算 边缘云 火山引擎边缘计算

使用 JS 转换数据的最佳实践

夏木

typescript data-convert

API网关与南北向安全设计

阿泽🧸

API网关 12月月更

iOS 15 TableView willDisplayCell获取失败

刿刀

UITableView iOS16

数据治理:指标体系管理

用友BIP

空间节省50%,时序性能提升5倍,三一重工从Hadoop+Spark到MatrixDB架构变迁实现One for ALL

YMatrix 超融合数据库

三一重工 超融合数据库 数据库· YMatrix

腾讯智慧农业首次亮相,助力青海大通农产品走进大湾区

科技热闻

移动开发跨平台框架,你了解多少?

FinClip

NFTScan 与 Merlin Protocol 达成战略合作伙伴,双方将在 NFT 数据层面展开深度合作

NFT Research

NFT 数据基础设施

国产智能BI产品崛起,帆软Fine BI、瓴羊Quick BI等应该如何选择

小偏执o

RocketMQ 全链路灰度探索与实践

Apache RocketMQ

RocketMQ 服务端 灰度

声网王浩宇:RTE 场景下的 Serverless 架构挑战【RTE 2022】

声网

架构 实时互动

Flask上手:step by step

无人之路

flask web开发 Web应用开发 Python. python web

Wallys//QCN9074/QCN9024/WiFi6/WiFi6E/4x4 MU MIMO Dual Band WiFi Module MiniPCIe/industrial wifi6 moudle

wallysSK

QCN9074 QCN9024 QCN9072

互联网都在说降本增效,小红书技术团队是怎么做的?

小红书技术REDtech

内部CRM和商业化SAAS CRM的区别

久歌

SaaS 架构设计 CRM

干货|成为优秀软件测试工程师的六大必备能力

SoFlu软件机器人

2023免费双系统虚拟机软件CrossOver2023

茶色酒

crossover CrossOver2023

腾讯云NoSQL数据库产品2022再迎升级,多项技术细节首次公开

科技热闻

5.外包学生管理系统实战

程序员小张

「架构实战营」

App长登录思考与实现

石君

信息安全 APP开发 认证

国产自研、安全、高可用——袋鼠云大数据基础平台EasyMR筑基企业数字化转型

袋鼠云数栈

大数据 hadoop 数据中台 基础数据平台 12 月 PK 榜

量化合约对冲交易机器人app系统开发源代码部署

开发微hkkf5566

NTFS读写工具Tuxera for Mac2023下载及功能介绍

茶色酒

Tuxera2022 Tuxera NTFS2022 Tuxera NTFS Mac2022

Web Development Technology Trends for 2023

Mahipal_Nehra

UI UX AI Codec Metaverse

服务超80家金融行业头部企业,腾讯会议将支持混合云部署

科技热闻

Istio的使用场景

穿过生命散发芬芳

istio 12月月更

照亮无尽前沿之路:华为正成为科技灯塔的守护者

脑极体

TitanIDE引领企业开发工具变革

行云创新

ide CloudIDE WebIDE

小令观点 | 不希望我的身份被别人冒用,该怎么办呢?

令牌云数字身份

网络安全 人脸识别 芯片技术

想要出售你的 CS 扩展?_Java_Lea Savage_InfoQ精选文章