2012-12-25 81 views
1

我在我的應用中使用了Android應用內結算版本3,並且我想在服務器上購買後驗證交易。有沒有辦法檢查交易是否有效?Android應用內結算驗證

+0

https://developer.android.com/google/play/billing/api.html –

+0

嗨Gaurav,感謝您的評論,但我知道這個鏈接,我知道如何使購買,但在應用程序結算是不安全的,所以我想驗證交易,以檢查用戶是否真的進行了購買或否。 – Aram

回答

2

驗證與設備上的驗證相同:您獲取一些數據和簽名,然後使用公鑰驗證簽名。如果驗證,則將交易信息保存在數據庫中等,並向客戶端(您的Android應用程序)發送一個OK響應。

0

我不太確定你想驗證什麼。我想你應該檢查API reference中列出的響應代碼。

0

讀這 -

要開始購買請求,您的應用程序發送一個請求getBuyIntent,指定項目的產品ID,購買,以及其他參數。在開發者控制檯中創建新的應用內商品時,您應該記錄產品ID。 Google Play會返回一個Bundle,其中包含應用程序用於啓動購買結賬UI的PendingIntent。 您的應用程序通過調用startIntentSenderForResult方法來啓動掛起的意圖。 當結賬流程結束時(即用戶成功購買商品或取消購買),Google Play會將響應Intent發送到您的onActivityResult方法。 onActivityResult的結果代碼有一個結果代碼,用於指示購買是成功還是取消。響應Intent包含有關購買商品的信息,其中包括由Google Play生成的purchaseToken字符串,用於唯一標識此購買交易。一旦你知道,如果該交易成功完成,就可以相應地更新您的服務器,如果這就是你想要的東西(你可以使用這個信息)

+0

謝謝你的回答,但有一些應用程序,如「自由」,它可以破解你的應用程序,用戶可以用假信用卡免費購買。我只是想知道有沒有一種方法(可能是網址)檢查交易是真實的還是假的。 – Aram

+0

如果您將在應用程序結算功能中使用Google,則不必擔心這些問題。假信用卡沒辦法。 –

+0

看看這個應用程序http://system.in-appstore.com/freedom/ – Aram