大家好,我是奶綠茶
今天來研究一下如何使用 Adobe AIR 在 Android 使用
In App Purchase, 也就是內購應用(好難翻譯,官方翻譯為:結帳服務)
奶綠茶我使用的這位作者提供的 Native Extensions
https://github.com/pozirk/AndroidInAppPurchase
首先還是要了解一下 Android 的內購流程
先 K 一下官方的文章吧
http://developer.android.com/google/play/billing/index.html
流程如下
1. 成為 Android 開發者
2. 新增 AIR 的應用程式, 並在 manifestAdditions 增加內構權限
3. 編譯出 apk 檔, 並上傳到 Developer Console
成功的話,就可以看到"應用程式內產品"可以新增項目
4.新增內構的項目,有三種, 這部份就自己看一下官方文件吧
5.選擇"服務和API",找到你的 Base64 編碼
6.回到 Adobe AIR, 就可以開始寫程式了
測試的結果
不過使用 AIR NativeExtensions 在內購時,有一個問題要注意
無法付費完成後,馬上使用消耗性物件
比如說遊戲的金幣或是藥水之類的
這是因為 AIR NativeExtensions 無法得知 Android Activity 裡的 onActivityResult 事件
要改也是可以,但工程有點大
所以目前只能用在永久性商品較適合,像是升級成 Pro 之類的。
轉載請註明出處, 祝大家學習愉快
今天來研究一下如何使用 Adobe AIR 在 Android 使用
In App Purchase, 也就是內購應用(好難翻譯,官方翻譯為:結帳服務)
奶綠茶我使用的這位作者提供的 Native Extensions
https://github.com/pozirk/AndroidInAppPurchase
首先還是要了解一下 Android 的內購流程
先 K 一下官方的文章吧
http://developer.android.com/google/play/billing/index.html
流程如下
1. 成為 Android 開發者
2. 新增 AIR 的應用程式, 並在 manifestAdditions 增加內構權限
3. 編譯出 apk 檔, 並上傳到 Developer Console
成功的話,就可以看到"應用程式內產品"可以新增項目
4.新增內構的項目,有三種, 這部份就自己看一下官方文件吧
5.選擇"服務和API",找到你的 Base64 編碼
6.回到 Adobe AIR, 就可以開始寫程式了
測試的結果
不過使用 AIR NativeExtensions 在內購時,有一個問題要注意
無法付費完成後,馬上使用消耗性物件
比如說遊戲的金幣或是藥水之類的
這是因為 AIR NativeExtensions 無法得知 Android Activity 裡的 onActivityResult 事件
要改也是可以,但工程有點大
所以目前只能用在永久性商品較適合,像是升級成 Pro 之類的。
轉載請註明出處, 祝大家學習愉快
留言
根據查到一些文件後的心得是ANE應該「也可以用在消耗性購買」
但因為不論是Google Play or iTunes,只會儲存永久性的商品的購買記錄,
但是消耗性的商品卻不會.............囧
如果消費者購買了消耗性商品,可能發生的情況有:
1. 使用者曾經刪除過又重新安裝APP
2. 使用者在第二台裝置上想要安裝APP
3. 消耗性商品的記錄沒有確實反應在APP上
這時候需要restore(恢復購買狀態)時就糗啦,
因為官方平台不會幫我們記錄,只能自己想辦法,不然就要被客訴了~
我查到的資訊是自己要準備Server記錄購買消耗型商品的數據,
這樣在當有上述條件發生時,
◎永久性商品的數據可以憑官方平台回傳取得
◎消耗性商品的數據就要靠自己Server的另行記錄
但看到
「Android Activity 裡的 onActivityResult 事件」
這是代表Google Play的消耗型商品可以不需自行記錄,
也能夠永久保有消耗型商品的數據嗎?