簡體   English   中英

android需要google用戶ID作為解鎖功能方法的一部分

[英]android need google user id as part of method to unlock feature

我的應用程序是免費的,並且我希望通過應用程序內購買啟用其他功能。 為此,我設想生成一個取決於當前用戶和當前應用程序版本的解鎖代碼。 我需要第一個,以便相同的密鑰不能與其他人的安裝一起使用(但可以用於同一用戶擁有的多個設備)。 我可能不需要第二個,但它將為將來提供更多的靈活性。

為此,我需要某種Google用戶ID。 有這樣的事嗎? 如果是這樣,我如何得到它?

謝謝。

Google會為您解決其中的一些問題。 它將為用戶向每個設備傳遞設備相關密鑰。 你的工作是

1)在您的服務器上正確驗證密鑰

2)確保從服務器返回特定於設備的授權值,以便用戶不能僅復制數據文件。

3)在設備上,使用授權值啟用事物。

驗證密鑰很容易,但是請確保在服務器上進行驗證。 問題是識別設備。 谷歌及其合作伙伴對此略有保留。 Tim Bray在http://android-developers.blogspot.ca/2011/03/identifying-app-installations.html上有一篇博客文章,討論了該問題。 我建議盡管他有保留,也要使用ANDROID_ID。 我對他的其他建議的安全性表示懷疑,但沒有進行完整的分析。 絕對遠離與網絡相關的任何事物(IMSI,IMEI,ESN等)。 我還緩存使用的設備標識符,並確保它不會更改。

就個人而言,我需要對解鎖應用程序中的功能所需的數據進行加密。 當我獲得有效的交易時,我計算出可以與設備ID結合使用的密鑰以解鎖數據。 它遠非完美,但似乎可行。 我接受我會被黑-我只是不希望它變得顯而易見。

如果您需要每個版本的密鑰,則需要在版本更改時執行RESTORE_TRANSACTIONS並在服務器上重新驗證。

我想提出另一種方法-更好,只是有所不同。 使用標志指示是否允許運行升級功能。 使用應用內結算API定期驗證用戶是否已購買升級。 如果不是,請重置標志。

用戶可以修改該標志,但是遲早會重置該標志,從而阻止使用這些功能。

為了真正打破這種方法,用戶將不得不對代碼進行反向工程並繞過檢查標志。 我懷疑大多數人會為之煩惱,但是我知道什么?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM