本文档介绍了用于发布小工具的各种选项。如果您使用 Google 小工具编辑器 (GGE) 来创建和托管小工具,则发布小工具会容易得多。
您可以将小工具放在以下任意一处位置:
并不是每个小工具都适用于所有环境。请参阅有关您容器的文档,以获取有关该环境中所支持功能的详细信息。
发布小工具之前,您应先对其进行测试,请记住将要在其中运行该小工具的目标环境的要求和限制。
您应对所有小工具进行以下测试:
UserPref 值的所有组合。如果使用的是 makeRequest(),则测试在数据源中断或返回错误时发生的问题。您可以通过将网址临时更改为其他网址来模拟该情形。
如何调整小工具的大小很大程度上取决于它所运行的环境。请参阅有关容器的文档以获取详细信息。
在设计和测试小工具时,请准备好使用 200 像素到 600 像素(最大)之间的任意宽度。对于某些小工具,宽度甚至还要更大。一般而言,如果给定了额外的空间,则对小工具进行设计以便正确显示。例如,地图小工具应充满其区域,图片小工具应使其集中在框架中间,而文本小工具应将其文本浮动在顶部(例如,通常位于底部的“点击以获取详细信息”链接应该紧靠着内容而不应浮动到小工具窗口的底部)。
如果您编写了一个自己觉得会有高访问量的小工具,则可以采取些措施来确保其可用性和良好的性能。如果您的小工具每天被查看 200,000 多次,或每秒约有 1 至 2 个请求,则您应考虑本部分中的以下提示。即使是一个每天接收 200,000 个请求的 50 KB 的小工具,每月也要消耗约 300 GB 的带宽。
一个小工具吸引众多用户的原因可能有多种。可能仅因为在内容目录中较常见。或者,如果该小工具用于特定的促销或广告中,也可能会产生高访问量。
您为高访问量小工具设定的目标应在 0.25 秒(250 毫秒)或更短的时间内响应一次。可使用 Firebug(仅用于 Firefox)来对此进行测量。提高小工具的响应速度必然会对用户的体验产生积极影响。有关优化小工具性能的提示,请参阅针对高访问量的优化处理。有关管理提示,请参阅管理高访问量。常规的测试准则对于极常用的小工具也尤为重要。
如果您认为您的小工具可能会产生高访问量,请遵循以下准则:
type=html 小工具。type=url 小工具的响应通常比 type=html 小工具要慢,因为其他托管服务器的性能较低且缓存支持不足。 makeRequest() 方法将内容缓存约 1 至 2 小时。您可以使用这些函数的 refreshInterval 参数来更频繁地刷新缓存。然而,缓存通过最小化发送至远程服务器托管内容的请求数目来帮助提高小工具性能。请勿请求高于所需的缓存刷新频率,否则将会减少缓存可支持的请求百分比。请参阅刷新缓存以获取该主题的更多论述内容。 http://www.google.com/ig/directory?url=<gadget-url> 而不是 Google Analytics(分析)来查看小工具的每周综合浏览量。<img> 标签指定高度和宽度。这可使您的小工具更快速地进行响应。如果您使用的是 gadgets.io.getProxyUrl() 并直接在 DOM 中插入图片元素,则不必设置宽度和高度属性。 gadgets.io.getProxyUrl() 函数缓存所有嵌入的图片,使用 embedCachedFlash() 缓存 Flash 内容,而无需直接链接至托管服务提供者。下面是使用 gadgets.io.getProxyUrl() 预加载图片的小工具的示例:以下是一个介绍如何使用 gadgets.io.getProxyUrl() 的示例小工具:
<?xml version="1.0" encoding="UTF-8" ?>
<Module>
<ModulePrefs title="Zombies!" height="350" />
<Content type="html">
<![CDATA[
<div id="zombiecontainer"
style="text-align:center;">
</div>
<script type="text/javascript">
var counter = 0;
// Preload the images using gadgets.io.getProxyUrl()
function load(imageList) {
var ret = [];
for (var i = 0, j = imageList.length; i < j; ++i) {
var img = document.createElement("img");
img.src = gadgets.io.getProxyUrl(imageList[i]);
ret.push(img);
}
return ret;
}
var files = [
"http://gadget-doc-examples.googlecode.com/svn/trunk/zombie-0.jpg",
"http://gadget-doc-examples.googlecode.com/svn/trunk/zombie-1.jpg",
"http://gadget-doc-examples.googlecode.com/svn/trunk/zombie-2.jpg",
"http://gadget-doc-examples.googlecode.com/svn/trunk/zombie-3.jpg",
"http://gadget-doc-examples.googlecode.com/svn/trunk/zombie-4.jpg",
"http://gadget-doc-examples.googlecode.com/svn/trunk/zombie-5.jpg",
"http://gadget-doc-examples.googlecode.com/svn/trunk/zombie-6.jpg"
];
var images = load(files);
browse();
// Browse through photos sequentially. When you get to the end of the array, start over.
function browse(){
if (counter == images.length)
{
counter = 0;
}
document.getElementById("zombiecontainer").innerHTML = "";
document.getElementById("zombiecontainer").appendChild(images[counter]);
counter++;
}
</script>
<br />
<div style="text-align: center;">
<input type=submit value="Next ->" onClick="browse()">
</div>
]]>
</Content>
</Module>
以下准则可帮助您管理高容量的小工具:
<username>.feedback+<gadgetname>@gmail.com 形式的地址。这可帮助您过滤从小工具用户接收的邮件。Gmail 会省略加号 (+) 后的所有内容,所以该电子邮件地址映射为 <username>.feedback@gmail.com。请注意,Gmail 拥有高品质的垃圾邮件过滤器。 完成对小工具的设计、运行和测试后,您可能决定将其提交给 Google 以在 iGoogle 内容目录中发布。目前,此功能仅适用于传统小工具。本部分列出了准备发布任何小工具均应遵循的常规步骤。
参考列出了可用于提供有关您小工具的“meta”信息的所有 <ModulePrefs> 属性。以下是您应该在小工具规范中包括的信息:
helensmith.feedback+coolgadget@gmail.com 形式的电子邮件地址。Gmail 会省略加号 (+) 后的所有内容,所以该电子邮件地址映射为 helensmith.feedback@gmail.com。您可以在此处创建 Gmail 帐户。 robots.txt 拦截的公共网站上。PNG 是首选格式,GIF 和 JPG 也可接受。小工具屏幕截图的宽度应为 280 像素。屏幕截图的高度应为所使用的小工具的“自然”高度。这有助于用户在将小工具添加至其页面前了解小工具将在其屏幕上占据的空间大小。屏幕截图不应在小工具的蓝色标题栏之上留有空白。屏幕截图应显示完整的小工具,包括其标题栏但不加其他任何东西。或者,可在编辑窗口打开时对小工具进行屏幕截图。不应对屏幕截图进行大小调整或修剪。为保证质量和一致性,Google 可能会自己对指定小工具进行屏幕截图。robots.txt 拦截的公共网站上。PNG 是首选格式,GIF 和 JPG 也可接受。缩略图应为 120x60 像素。不应包含标题栏。 如果您想列在作者页面上,您可以包括以下附加字段:
确保您已通过可将所有安全风险降到最低的方式对小工具进行了编码。
您可以使用 <ModulePrefs> 下的 <Locale> 标签来指定小工具所支持的区域设置。有关详细信息,请参阅 XML 参考中的 ModulePrefs/Locale。
要宣传您的小工具,请考虑在上面添加一个添加至 Google 的按钮。
您可以在此处将小工具提交至 Google。您也可以使用 GGE“文件”>“发布”命令将小工具直接提交至内容目录。请参阅常见问题解答获取对如何在目录中查找小工具,以及决定其放置位置的因素的说明。
如果您已在不同网址提交了小工具的多个版本,并且想将某一版本指定为正式版本,您可使用 iGoogle 传统问题跟踪器以请求更改。