16 


使用 Payment API

JSR 229 (Payment API) 使应用程序可以代表其用户进行付费。通过付费适配器,Payment API 可支持不同的付费机制。实现 Payment API 的设备可具有一个或多个适配器。MIDlet 套件使用描述符属性指定它们可以使用的付费适配器的类型。

Sun JavaTM Wireless Toolkit for CLDC 的仿真器通过可以模拟“特级短信价”的短信 (Premium Priced SMS, PPSMS) 和信用卡付费的示例付费适配器实现 Payment API。此外,使用工具包可以很容易设置 MIDlet 的描述符和 JAR 文件清单中的必要属性。最后,使用付费控制台可以轻松地跟踪通过应用程序所执行或尝试的付费。

由于 Payment API 与置备 (provisioning) 和外部设备付费机制紧密相关,并且付费仅可以在受信任的保护域中进行,因此请始终使用工具包的“通过 OTA 运行”机制测试和调试您的 Payment API 应用程序。有关详细信息,请参见第 2 章


16.1 项目付费设置

要调整项目的付费属性,请单击“设置”并选择“付费”图标。

图 16-1 付费设置

选择了付费类别的“设置”窗口

这些字段和值在 JSR 229 (Payment API) 规范中进行了详细地介绍。

“常规”框包含有关使用中的 Payment API 版本以及付费更新位置的信息。要进行测试,您可以指定用于从项目目录中直接检索更新文件的 localhost URL(如屏幕快照所示)。

“调试”框包含在应用程序测试期间要使用的选项。每个选项都在 Payment API 规范中进行了介绍。

“功能”框列出了应用程序可以收费的功能。这些功能与为每个提供商列出的价格信息相对应。您可以使用“添加”和“删除”按钮修改功能列表。

“提供商”框列出了可以用于此应用程序的特定付费提供商。到达付费时间时,仿真器(或设备)会将一个可用的付费适配器与应用程序中列出的一个提供商进行匹配。您可以使用“添加”、“编辑”和“删除”按钮修改提供商列表。如果您添加了提供商或对提供商进行了编辑,会显示以下窗口。

图 16-2 编辑付费提供商

对于每个付费提供商,信息为名称、支持的适配器、货币和付费特定信息。

这些字段也在 Payment API 规范中进行了详细介绍。

对于每个已定义的付费功能,在“价格信息”框中均包含与其相对应的一行信息。要编辑价格标记的值,请在“值”列中双击相应的单元。


16.2 直接编辑付费属性

付费属性存储在扩展名为.jpp付费更新文件中。有关完整的详细信息,请阅读规范。Sun JavaTM Wireless Toolkit for CLDC 提供的实用程序使您可以独立于项目设置而轻松编辑付费更新文件。

要运行该实用程序,请选择“文件”>“实用程序”,并选择“付费编辑对话框”然后按“启动”。系统将提示您选择要编辑的付费更新文件。选择文件后,将显示一个外观与项目设置中的“付费”部分几乎相同的窗口。付费编辑实用程序中不包含调试设置。

编辑付费更新设置,并在完成后按“确定”。由于付费更新文件可以进行加密签名,因此工具包将显示可以用来对文件进行签名的密钥列表。选择要使用的密钥,然后按“对付费更新文件进行签名”。


16.3 付费首选项

要调整工具包的 Payment API 设置,请选择“编辑”>“首选项”,然后单击“付费”。

图 16-3 设置付费首选项

“首选项”的付费类别选项为“移动电话国家/地区代码”、“移动电话网络代码”、“过去的事务限制”和“控制台电话号码”。

“移动电话国家/地区代码”(Mobile Country Code, MCC) 和“移动电话网络代码”(Mobile Network Code, MNC) 与 PPSMS 付费提供商结合使用。通过 MCC 和 MNC 的组合可以标识设备的无线运营商。付费时,MCC 和 MNC 用于从项目设置的提供商列表中查找匹配的提供商。由于仿真器不是真实设备,因此您可以通过填写适当的 MCC 和 MNC 值模拟运营商。有关详细信息,请查询 Payment API 规范。

“过去的事务限制”用于确定在仿真器中所记录的先前事务的数目。这将会影响在外部事件窗口中显示的列表的长度(在下面进行了介绍)以及应用程序本身可以检索的先前事务的数目。

最后,“控制台电话号码”用于确定付费控制台的模拟电话号码(随后将对其进行
介绍)。


16.4 查看事务历史

仿真器可以像真实设备一样跟踪付费事务。要查看事务的历史,请从仿真器窗口的菜单中选择 "MIDlet" >“外部事件”。单击“付费事务”选项卡。

图 16-4 查看付费事务

选择了“付费事务”选项卡的外部事件生成器

单击“刷新”以在进行更多付费后更新列表。选择事务并单击“详细信息”以在单独的窗口中查看所有详细信息。

外部事件窗口仅显示仿真器在通过 OTA 运行时所执行的事务。尽管不使用 OTA 也可以完成事务,但不会显示此类事务。要获得对付费最真实的模拟效果,请始终使用“通过 OTA 运行”测试应用程序。


16.5 监视付费

Sun JavaTM Wireless Toolkit for CLDC 提供的付费控制台使您可以轻松看到付费通过示例付费适配器的过程。要启动“付费服务提供商控制台”,请选择“文件”>“实用程序”>“付费控制台”。

图 16-5 付费控制台

“付费服务提供商控制台”窗口显示来自付费事务的消息

此外,您可以使用网络监视器查看事务。信用卡事务可以使用 HTTPS 执行,而 PPSMS 事务可以使用 SMS 执行。有关网络监视器的完整说明,请参见第 5 章