Android计费-您已经拥有项目时出错:运营商计费配置为空。设备不是DCB 2的目标

Android计费-您已经拥有项目时出错:运营商计费配置为空。设备不是DCB 2的目标,android,in-app-billing,android-billing,Android,In App Billing,Android Billing,我正在尝试使用Android billing v3测试试用订阅。该应用程序已经有产品投入生产,但我正在尝试添加订阅。当我第一次买试用潜艇时,一切都很好。然后我取消了它(等待数小时和数天),然后当我再次尝试购买它时,会出现一个Android对话框,其中有一条消息:你已经拥有了这个项目。Google Play应用程序和我的服务器端应用程序都确认订阅已取消 logcat窗口显示此输出: 03-24 15:41:53.722: D/IabHelper(21333): Constructing buy i

我正在尝试使用Android billing v3测试试用订阅。该应用程序已经有产品投入生产,但我正在尝试添加订阅。当我第一次买试用潜艇时,一切都很好。然后我取消了它(等待数小时和数天),然后当我再次尝试购买它时,会出现一个Android对话框,其中有一条消息:你已经拥有了这个项目。Google Play应用程序和我的服务器端应用程序都确认订阅已取消

logcat窗口显示此输出:

03-24 15:41:53.722: D/IabHelper(21333): Constructing buy intent for com.MYAPP.freetrial, item type: subs
03-24 15:41:53.732: D/Finsky(20292): [1056] InAppBillingUtils.pickAccount: com.MYAPP:      Account determined from installer data - [UAHnZq8S3yArGc_6ew11RBHr0DE]
03-24 15:41:53.742: D/IabHelper(21333): Launching buy intent for com.MYAPP.freetrial. Request code: 10001
03-24 15:41:53.742: D/audio_hw_primary(181): select_devices: out_snd_device(2: speaker) in_snd_device(0: )
03-24 15:41:53.742: D/ACDB-LOADER(181): ACDB -> send_afe_cal
03-24 15:41:53.742: I/ActivityManager(580): START u0 {cmp=com.android.vending/com.google.android.finsky.billing.lightpurchase.IabV3Activity (has extras)} from pid -1
03-24 15:41:53.812: D/Finsky(20292): [1] CarrierParamsAction.createCarrierBillingParameters: Carrier billing config is null. Device is not targeted for DCB 2.
03-24 15:41:53.812: E/Finsky(20292): [1054] FileBasedKeyValueStore.delete: Attempt to delete 'params5wrD2REIodMwVQIkVi-biw' failed!
03-24 15:41:53.872: W/GLSUser(17314): GoogleAccountDataService.getToken()
03-24 15:41:53.882: I/ActivityManager(580): Displayed com.android.vending/com.google.android.finsky.billing.lightpurchase.IabV3Activity: +99ms
我必须添加到onQueryInventoryFinished BILLING\u RESPONSE\u RESULT\u ITEM\u OWNED\u checked,因为每次我查询库存时都会在服务器端重新创建Sub:

public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
    // Log.d(TAG, "Query inventory finished.");
    mHelper.flagEndAsync();
    if (result.isFailure()) {
        // complain("Failed to query inventory: " + result);
        return;
    }

    // Log.d(TAG, "Query inventory was successful.");
    if (result.getResponse() == IabHelper.BILLING_RESPONSE_RESULT_ITEM_ALREADY_OWNED) {
        return;
    }
    consumePuchasedItems(inventory);

    // Log.d(TAG, "Initial inventory query finished; enabling main UI.");

}
我的应用程序是用发行证书签署的,构建代码+版本号与开发者控制台中的完全相同

我使用的是(14/12/2013)的最新代码

我已经检查过和其他类似的帖子,但它不起作用

如果有任何建议,我将不胜感激。有什么想法吗?我在这方面工作了好几天,仍然没有解决方案。订阅过程似乎第一次运行良好,我尝试了不同的帐户。当我取消它并试图重新购买它时,问题就出现了


谢谢

取消订阅时,在订阅期结束之前,您仍然可以访问该订阅。这是谷歌的实现。这就是为什么取消订阅不退款的原因,因为即使取消订阅,谷歌仍然允许在整个订阅期内访问订阅

取消订阅的作用是停止订阅续订

这就是为什么即使您取消了订阅,也无法立即再次购买。您应该能够在当前订阅期结束后重新购买