我的應用程序已在Play商店一段時間,它的工作。 昨天我發佈了一個更新,發現了一個錯誤,我想今天修復它。 將新版本和版本代碼(我可以測試購買)上傳到發佈商頁面後,我的阿爾法apk文件在應用程序購買不適用於這個新版本。 我沒有更改任何與應用帳單相關的代碼。 我正在使用via的iab庫。在應用程序計費失敗我的應用程序的新版本
我收到此錯誤信息:
01-16 13:15:34.365: E/Parcel(707): Class not found when unmarshalling: com.google.android.finsky.billing.lightpurchase.PurchaseParams 01-16 13:15:34.365: E/Parcel(707): java.lang.ClassNotFoundException: com.google.android.finsky.billing.lightpurchase.PurchaseParams 01-16 13:15:34.365: E/Parcel(707): at java.lang.Class.classForName(Native Method) 01-16 13:15:34.365: E/Parcel(707): at java.lang.Class.forName(Class.java:204) 01-16 13:15:34.365: E/Parcel(707): at java.lang.Class.forName(Class.java:169) 01-16 13:15:34.365: E/Parcel(707): at android.os.Parcel.readParcelableCreator(Parcel.java:2091) 01-16 13:15:34.365: E/Parcel(707): at android.os.Parcel.readParcelable(Parcel.java:2055) 01-16 13:15:34.365: E/Parcel(707): at android.os.Parcel.readValue(Parcel.java:1971) 01-16 13:15:34.365: E/Parcel(707): at android.os.Parcel.readMapInternal(Parcel.java:2255) 01-16 13:15:34.365: E/Parcel(707): at android.os.Bundle.unparcel(Bundle.java:223) 01-16 13:15:34.365: E/Parcel(707): at android.os.Bundle.getString(Bundle.java:1082) 01-16 13:15:34.365: E/Parcel(707): at android.content.Intent.getStringExtra(Intent.java:4945) 01-16 13:15:34.365: E/Parcel(707): at com.android.server.am.ActivityStack.startActivityLocked(ActivityStack.java:3745) 01-16 13:15:34.365: E/Parcel(707): at com.android.server.am.ActivityStack.startActivityMayWait(ActivityStack.java:4961) 01-16 13:15:34.365: E/Parcel(707): at com.android.server.am.ActivityManagerService.startActivityInPackage(ActivityManagerService.java:3433) 01-16 13:15:34.365: E/Parcel(707): at com.android.server.am.PendingIntentRecord.sendInner(PendingIntentRecord.java:254) 01-16 13:15:34.365: E/Parcel(707): at com.android.server.am.ActivityManagerService.startActivityIntentSender(ActivityManagerService.java:3325) 01-16 13:15:34.365: E/Parcel(707): at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:258) 01-16 13:15:34.365: E/Parcel(707): at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2122) 01-16 13:15:34.365: E/Parcel(707): at android.os.Binder.execTransact(Binder.java:388) 01-16 13:15:34.365: E/Parcel(707): at dalvik.system.NativeStart.run(Native Method) 01-16 13:15:34.365: E/Parcel(707): Caused by: java.lang.NoClassDefFoundError: com/google/android/finsky/billing/lightpurchase/PurchaseParams 01-16 13:15:34.365: E/Parcel(707): ... 19 more 01-16 13:15:34.365: E/Parcel(707): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.finsky.billing.lightpurchase.PurchaseParams" on path: . 01-16 13:15:34.365: E/Parcel(707): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:64) 01-16 13:15:34.365: E/Parcel(707): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 01-16 13:15:34.365: E/Parcel(707): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 01-16 13:15:34.365: E/Parcel(707): ... 19 more
我得到它的時候買入意圖被調用。上UI 錯誤信息是:
This version of the application is not configured for billing trough Google Play. Check the help center for more information.
我已經嘗試過在不同設備上,具有相同的結果。舊版本的應用程序仍然有效。 昨天它完美運作。
我是否應該等待谷歌播放服務獲取信息,我有一個新的測試版更新?我猜測這個更新還沒有達到我的設備。
編輯: 我已經上傳了3個版本碼作爲beta到發佈商網站試圖解決這個問題,現在前一個版本正常。所以我想我真的不得不等待。 :(
看起來你的構建可能會被破壞。一個ClassNotFoundException與beta更新無關(並且下次:請不要使用blocktraote作爲堆棧跟蹤,但是使用正確的縮進或「代碼」按鈕,這是更好的可讀性) – WarrenFaith
設置版本代碼較低(==到市場上的版本),併發布版本,使購買工作再次。我的整個日誌分爲1行。 – Tamas
好吧,你嘗試了構建過程mult很多次,它總是失敗? – WarrenFaith