翻譯不完整。請協助 翻譯此英文文件。
Firefox Marketplace 的消費者有兩種需要付款的情形:
1). 購買 App 需付款 (付費 App)
2). 在安裝 App 之後另外購買某樣東西需付款;即 App 內付款機制 (In-app payment)
本文即提供付費 App 所需的程式碼與作業流程,另外將有另一篇文章說明 In-app payments。
選擇封裝方式 (Packaged 或 Hosted)
在了解付款方式之前,先決定自己的 App 應該是封裝式 (Packaged),或架設/托管式 (Hosted)。如果想處理為封裝式 App,就必須遵守內容安全政策 (Content Security Policy,CSP)。可參閱下列說明以進一步了解。
- 封裝式 App:了解封裝式與架設/托管式 App 之間的不同。其中也初步說明封裝式 App 所需的內容安全政策。
- 內容安全政策 (CSP):解釋 CSP 之含意。
建構付費 App
任何 App 都能設定為付費 App,也都能是封裝式或架設/托管式 App;完全不需特別的權限。在將 App 提交到 Firefox Marketplace 時,只要勾選使其成為付費 App 即可。但開發者需讓 App 驗證自己的銷售收據,才能確認收到帳款。接下來就是應進行的步驟。
將 installs_allowed_from 添增到 manifest.webapp
首先必須將 installs_allowed_from
欄位添增到 App 的 manifest 檔案中。另給予如下的 Firefox Marketplace 網址:
"installs_allowed_from": [ "https://marketplace.firefox.com" ]
這個步驟屬於收據驗證作業的一部分,才能讓系統確認 App 來自於收款的商店。
驗證收據
只要從 Marketplace 售出 App 之後,隨即會產生該筆銷售的數位收據。開發者應該為自己的 App 植入程式碼,讓 App 執行時能一併驗證銷售收據。我們強烈建議,但不強制驗證收據。此查核作業可避免消費者安裝了 App 卻未付費。
Mozilla 另負責維護 JavaScript 輔助函式庫 (Helper),即所謂的 receiptverifier,只要少量程式碼即可驗證收據。只要將下列 receiptverifier
函式庫加入 App 即可:
再將下列程式碼加入 App (更改內文以符合自己的 App),即可驗證收據:
mozmarket.receipts.Prompter({ storeURL: "https://marketplace.firefox.com/app/your-app", supportHTML: '<a href="mailto:[email protected]">email [email protected]</a>', verify: true });
正常只要啟動 App 就會開始驗證收據。如果確認收據有效,即可釋放 App 的資源;反之可停止 App 執行。
注意:若要進一步建立自己的收據驗證器,可參閱驗證收據。
另可參閱
- 建構 Firefox OS 的付費 App:內有更多付費 App 相關資訊的連結。
- receiptverifier 函式庫:使用上述函式庫的說明文件與範例。
- Web App 收據:數位收據的詳細說明資訊。