Google play billing(Google play 內支付) 上篇


寫在前面:

最近Google貌似又被全面封殺了,幸好在此之前,把Google play billing弄完了,現在寫篇 博客來做下記錄。這篇博客一是自己做個記錄,二是幫助其他有需要的人。因為現在基本登不上Google開發者后台,所以有些東西就沒有辦法截圖了,盡量爭取講的全面些。這個博客會分成兩篇,第一篇主要講准備工作(要准備的東西挺多),第二篇講相關的代碼接入。

准備工作:

既然是做Google 內支付,所以像android的開發環境肯定是配置好了的,這里就不做講解了。

1.下載開發包。

通過Android SDK Manager下載Android SDK的extras部分,最好把紅線標示的兩個開發包都下載了,第一個是Google Play Service包,其中會包括Google Cloud Message,Google Wallet等和Google Play Service相關的文檔。第二個是內支付的包,其中就有我們這次開發需要的文檔,例子,配置文件等。p.s.我自己用的筆記本沒有裝Google Play Service,不要在意:).

 當把包下載完后你可以在本地SDK中找到這兩個包(根據自己SDK的路徑來找),billing包在這里。

其中samples就是Google官方提供的示例工程,我們的支付會用到,第二個文件是一個應用內通信相關的文件,是需要添加到我們自己工程里的,下面會講到。

和billing相關的文檔在這個目錄

v2可以跳過不看,我們現在要用v3支付,也就是版本3的支付(20150624追加更新:近日發現Google已升級支付版本到 5 了,有新的就建議大家用新的)。我建議是把這幾個文檔全部看一遍,這樣可以讓你心里對Google的這個支付有個大概的了解,看看這個支付是走的什么流程,用到了那些東西。雖然都是英文的,但是里面專業術語很少,我相信你花一個上午時間是可以看完的。其實我現在要講的東西也是從這里看到的,所以如果你把這幾個文檔看懂了,也就可以不用看這篇博客了 :)

2.准備beta版APK

下載好上面的billing包后,第一,把IInAppBillingService.aidl這個文件加到你的工程里,添加方法很簡單,在你的工程里建一個如下的包名com.android.vending.billing,再把這個aidl文件拷貝到里面,最后刷新一下你的工程就可以了,如果工程沒有生成相關代碼,可以執行下android update命令,update下你的工程。

<uses-permission android:name="com.android.vending.BILLING" />

第二,把上面這個權限添加到你工程的AndroidManifest.xml里(可以在工程里找到)。完成上面兩步后,你的工程就有Google billing了(當然等你添加了支付代碼后才算最后完成),在你的程序打包簽名后,Google Play后台也會認可你的程序了,能夠允許你在后台添加內購商品了.

在正式接入支付代碼前,你可以先把這個apk上傳到Google Play后台,這個APK就相當於你要發布的APK了,當然你不會真的發布它,這里要說的就是,這個上傳的APK是需要簽名的,而且包名以及簽名要與你以后上傳的正式APK保持一致。當然你也可以把支付相關的代碼接入完畢后再上傳后台。如何上傳APK,在你登陸開發者后台后就知道怎么做了。需要注意的是這個包要上傳為beta版,這樣Google不會把它發布,但是可以激活APK的支付功能,這樣我們就可以在本地裝上APK測試支付了。

3.需要的賬戶

(1)去Google開發者后台申請賬號,上傳apk。 既然是要加Google支付了,就說明咱們的程序要上架Google Play了,所以開發者賬號必須要有,相信你已經在開發者后台注冊了賬號了,如果還沒有就去注冊一個吧,因為我現在無法登陸開發者后台,所以注冊賬號這里就不講了,你可以開vpn到Google開發者后台注冊一個,順便也要開通你的Google 錢包賬戶。

(2)測試賬號添加。在這個文檔里對於如何添加測試賬戶有詳細的說明,這里不做贅述。測試賬戶就是一個可用的gmail賬戶,如果你的測試手機上登陸的是測試賬戶,當你測試購買Google billing時,Google是不會扣你錢的,這樣你就可以免費測試你的應用內購買了。可以在后台添加多個測試賬戶。附加說明, 測試賬號可以在后台里的設置界面添加。如下圖示。先前遇見一個同學把邀請組測試當做測試賬號了,那個只是你邀請別人來測試你的apk,而不是測試賬號。

(3)設置應用內商品。設置應用商品前,你需要把你的beta版APK上傳到Google Play后台.在這個文檔有對在后台如何設置內購商品的詳細說明。需要注意的是,你設置的商品是唯一的,商品名字不可以重復,也不可以重用。建議在測試階段可以只設置一個測試用的商品就可以了,等你支付添加完畢后,就可以把所有的商品添加到后台了。

(4)public key。驗證支付結果的一個key,很重要,程序里要用到,在文檔里可以找到從哪里獲得。下篇 會講到怎么用,這里可以先提及一下,就是這個key最好放到服務器端。當然如果你做的是單機游戲,就考慮如何隱藏這個key了,不管怎么樣,千萬不要名文寫在你的java代碼里就好。

4.測試設備

要測試Google billing,你首先需要一個帶有完整Google Play應用商店,Google Play Service的Android手機。國內手機廠商一般都把這兩個程序刪掉了,你需要重新下載安裝,裝上后能不能用,你就自行百度解決吧。個人推薦用Google親兒子nexus系列的設備,如果沒有的也可以使用魅族和小米的手機,這兩個廠商倒是把Google服務保留了(贊一個)。然后你要有個vpn,必須能夠翻出國門哦。因為你的應用程序添加了Google billing后,國內的Google Play商店是不會上架你的程序,當然在你后台選擇發布地區時就選不到中國大陸這個選項:(。因而你用國內的網絡是無法完成支付的,這時你就必須開vpn來測支付了。注意一點,如果你曾經用國內的網絡使用過Google Play程序商店的話,就需要把Google Play程序的數據清空,否則即使你后來開vpn測試,Google Play還是會把你當做國內用戶對待,切記,切記。

5.信用卡

測試支付必須要有個VISA信用卡賬戶,或者其他像萬事達這樣的信用卡賬戶即可。雖然用測試賬戶測試購買不扣費,但是信用卡賬戶在支付過程中還是要填的。如果你是在公司工作的話,就讓你們公司給你提供個信用卡賬戶吧,如果是個人開發者,就用自己的吧。推薦有一部固定的手機來測支付,這個手機最好沒有root,因為你要輸入你的信用卡賬戶和密碼的,起碼要保證安全。

以上就是需要做的准備工作,這些東西可以在開發前做,也可以在開發完畢后做。沒有多大區別,個人推薦在添加Google billing代碼前,可以先把后台相關的准備好。其實以上所說的基本都是billing文檔上的東西,所以還是推薦先把那幾個文檔看完,然后再動手添加代碼。下篇講代碼的接入。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM