植物大戰殭屍2付費分析

繼續整理以前的文章,對新手可能有點思路的啓發吧,直接放博客了...

----------------------------分割線---------------------------------

這兩天看到網上有人發了關於移動手機卡內購的的教程,直接把解包後的文件ChinaMobilePurchase$PurchaseCallBack.smali裏面的onUserOperCancel內容改成onBillingSuccess的內容,用移動支付點擊取消就相當於支付了。剛好現在手頭的測試卡是聯通的,好吧,重新開始分析聯通的支付過程。

第一步:遊戲試玩


我們首先安裝軟件到手機上,在百度搜索下載apk進行安裝即可。
將遊戲打到第二關,我們打開Eclipse的DDMS查看Log內容。


然後在第二關中點擊加速按鈕,然後點重新開始,再次點擊加速按鈕,會彈出提示






這個時候我們看DDMS中的Log日誌,然後發現相關的內容,找到關鍵字tag的xyf,然後我們添加一個Filter,tat設置爲xyf即可




這個時候,我們先點開手機的飛行模式,看一看支付失敗的效果是什麼樣子。Log如下





第二步:開始思考
經過了第一步的分析,我們有了大致的操作方向。
①.根據提示的內容尋找相關代碼.
②.短信購買,我們直接修改短信.
③.如果能搞明白②,那麼我們可以去掉短信發送過程.

第三步:開始分析
搜索‘s31:’看其出現地方的上下文,在
zhiwudazhanjiangshi2gaoqing_1\smali\com\multimode_billing_sms\ui\IIlIlIIIlIIlIIll.smali
發現有s31所在的地方:






Utf-8轉碼後爲:
S31:用戶確認選擇,準備發送短信
然後在這個類裏面,向上翻看





Utf-8轉碼後爲:
S31:用戶確認選擇,準備發送短信
然後在這個類裏面,向上翻看





S31所處在這個if語句下,也就是點擊事件的判斷,即確定或者取消。即我們找到了點擊確定後所進行的事件。知道這個以後,我們開始尋找發送短信的入口在哪裏,首先看s31的下文,因爲s31的內容就是準備發送短信 ,於是我們找到下面這個類.
Lcom/multimode_billing_sms/ui/MultiModePay;





由於我們現在尋找的就是發送短信的入口,所以,我們現在這個類搜索sendtextmessage關鍵字,看是否能找到,能找到的話,我們的工作就很簡單了。







找到這個後,豁然開朗,準備測試,我們將手機號修改發到另外一個卡上,看是否能收到短信,如果能收到,說明我們修改成功,這段代碼就是付費代碼。
回編譯,簽名,安裝,測試......
效果圖如下:




手機上顯示購買成功,OK,到這裏我們明白了聯通卡的支付流程。然後我們事先第二步思考的內容.
思考②.我們可以想到,最簡單的方式就是修改這裏的手機號,修改短信內容,短信發送號碼。
也就是sendTextMessage中的內容,修改v1(短信號碼),v2(短信內容)也就是發送個查詢短信到10010即可。
---------------------------------分割線--------------------------
invoke-virtual/range {v0 .. v5}, Landroid/telephony/SmsManager;->sendTextMessage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/app/PendingIntent;Landroid/app/PendingIntent;)V
---------------------------------分割線--------------------------
    在此代碼上方編寫
const-string v1, "10010"
const-string v3, "10010"
即可。
思考③.刪除這段發送短信的代碼,也就是上文提到的sendTextMessage的方法,我們查看下效果看是否可行。
刪除,回編譯,簽名,測試,看Log






到了這裏,通過Log反饋的內容,我們也可以知道已經購買成功,然後我們看遊戲裏面是否正常,如下圖:




第四步:測試完成
好了,到了這裏我們已經測試完畢,聯通卡的支付已經搞定,可以開開心心地玩遊戲了~
這個時候,我們繼續思考,如果以後碰到的遊戲還是短信付費,我們就可以直接搜索關鍵字sendTextMessage,然後查看上下文修改進行測試,最後刪除測試即可。

原軟件下載地址:
鏈接:http://pan.baidu.com/share/link?shareid=711418096&uk=3659465571 密碼:1shi




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章