相关疑难解决方法(0)

应用内购买在更新后使用了错误的帐户

典型情况下,用户在其Android设备上有两个帐户xyz@gmail.com和abc@gmail.com.用户使用帐户xyz@gmail.com在版本1.0上购买我的高级升级,然后他们更新到版本1.1并且代码(应用内购买代码)现在认为他们使用的是帐户abc@gmail.com,因此它认为用户尚未购买高级升级.我知道它使用了错误的帐户,因为他们向我发送了他们的订单电子邮件,然后他们告诉我,如果他们按下$ amount,那么在购买对话框中列出了错误的电子邮件.此时唯一的解决方法是使用Play商店桌面网站和正确的帐户卸载并重新安装.

我正在使用来自示例的IABHelper以及StackOverflow的一些修复.据我所知,我甚至无法选择他们正在使用的帐户.

关于可能发生的事情的任何想法?这有发生在其他人身上吗?

代码超出了StackOverflow的长度限制,所以我把它放在http://pastebin.com/hLquZ6SP

编辑:我现在有一个用户声称每次更新应用程序时都会发生这种情况.

编辑:这在分阶段推出期间发生了很多,我认为因为获得分阶段更新的帐户不是用户购买IAP的帐户.

android in-app-purchase in-app-billing google-play google-play-services

17
推荐指数
1
解决办法
4505
查看次数

测试APK扩展库的问题

我已经将来自Google的APK扩展文件下载库集成到我的项目中,它或多或少都可以正常工作(除了一些小问题,其他人已经在SO上报告了).

但是,我很难测试它.当我第一次测试时,我将已签名的APK +主扩展文件版本1上传到Google Play,效果很好.

但是,当我升级我的应用程序时,与主扩展文件版本2一起,应用程序无法再下载文件 - 库立即返回NO_DOWNLOAD_REQUIRED,但文件不存在!我开始调试LVL检查通行证,但可下载的文件表是空的!当我试图调试细节时...它突然又开始工作了!

我认为这是一种暂时的故障并继续我的工作,只是再次更新我的APK和扩展文件后再次遇到同样的问题.应用程序通过LVL检查,但库再次假定没有要下载的文件.

这是谷歌图书馆的一个已知问题吗?或者我可能需要等待一段时间,直到文件在Google的云上可用?

编辑:它刚开始工作正常.它似乎需要一些时间让文件以某种方式在Google方面传播.关于该库的一个坏处是,一旦它验证了许可证,它就再也不会检查下载列表,所以我不得不重新安装该应用程序.奇怪......为什么这么复杂?

android expansion apk google-play

10
推荐指数
2
解决办法
4676
查看次数

Android应用程序在Lollipop上崩溃 - 服务意图必须明确:

我的日志......

05-05 12:02:50.620:E/AndroidRuntime(32319):java.lang.RuntimeException:无法启动活动ComponentInfo {com.xxxxxxxx.apps.xxx/com.xxxxxx.apps.xxx.activities.SplashActivity}:java .lang.IllegalArgumentException:Service Intent必须是显式的:Intent {act = com.android.vending.licensing.ILicensingService}

我在哪里修复我的代码?

package com.xxxxxx.apps.xxx.activities;`

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.provider.Settings.Secure;
import android.util.Log;
import android.widget.ImageView;
import android.widget.ImageView.ScaleType;

import com.android.vending.licensing.AESObfuscator;
import com.android.vending.licensing.LicenseChecker;
import com.android.vending.licensing.LicenseCheckerCallback;
import com.android.vending.licensing.ServerManagedPolicy;
import com.xxxxxxxx.apps.xxxx.R;
import com.xxxxxx.libs.util.Platform;

public class SplashActivity extends Activity {

    /*[ $if full $ ]*/
    private final class xxxLicenseCheckerCallback implements LicenseCheckerCallback {
        @Override
        public void allow() {
            Log.i(TAG, "License OK");

            licenseResponseHandler.postDelayed(new Runnable() {
                @Override
                public void run() {
                    Intent intent …
Run Code Online (Sandbox Code Playgroud)

java android

9
推荐指数
2
解决办法
3948
查看次数

Android L (API 21) - java.lang.IllegalArgumentException:服务意图必须是显式的

Android 新版本 - “Lollipop”(API 21)带来了很多变化,但如果您希望将您的应用程序定位到该 API,它会付出一些代价。

当我们开始让我们的应用程序适应新的 API 时,我们遇到的第一个问题是 IllegalArgumentException: Service Intent must be explicit

如果您遇到了该问题,并且您实际上打算以显式方式使用您的意图(这意味着在启动服务时您希望恰好命中 1 个服务操作),那么这里有一个快速解决方法来转换隐式 --> 显式:

public static Intent createExplicitFromImplicitIntent(Context context, Intent implicitIntent) {
        // Retrieve all services that can match the given intent
        PackageManager pm = context.getPackageManager();
        List<ResolveInfo> resolveInfo = pm.queryIntentServices(implicitIntent, 0);

        // Make sure only one match was found
        if (resolveInfo == null || resolveInfo.size() != 1) {
            return null;
        }

        // Get component info and create ComponentName
        ResolveInfo serviceInfo = resolveInfo.get(0);
        String packageName …
Run Code Online (Sandbox Code Playgroud)

android android-intent android-service android-5.0-lollipop

3
推荐指数
1
解决办法
3081
查看次数

Bazaar(伊朗Android Market)在Android 5 Lollipop中出现AppBilling错误

对于inAppBilling我的应用程序使用集市(伊朗Android Market的)API.

一切都是正确的但在Android 5 Lollipop中这不能正常工作并返回错误:

在此输入图像描述

经过多次搜索发现这个类似的问题这个链接也是这个.(solutions are similar together)

所以我尝试添加这一行:

  serviceIntent.setPackage("ir.cafebazaar.pardakht");
Run Code Online (Sandbox Code Playgroud)

在此之后:

  Intent serviceIntent = new Intent("ir.cafebazaar.pardakht.InAppBillingService.BIND");
Run Code Online (Sandbox Code Playgroud)

现在app返回此错误:

java.lang.NullPointerException: Attempt to invoke interface method 'boolean java.util.List.isEmpty()' on a null object reference
        at farahang.tedAmouz.BzrBl.util.IabHelper.Setuping(IabHelper.java:227)
        at farahang.tedAmouz.adapters.slideMenuAdapter.onClick(slideMenuAdapter.java:155)
Run Code Online (Sandbox Code Playgroud)

代码在完全正确的Android 5 Lollipop版本下工作只是有问题Android 5 Lollipop!

android in-app-purchase in-app-billing android-5.0-lollipop

2
推荐指数
1
解决办法
751
查看次数

什么是5.0许可错误的最佳解决方案?

所以我的所有应用程序在5.0上运行时都会遇到此异常...

java.lang.IllegalArgumentException:Service Intent必须是显式的:Intent {act = com.android.vending.licensing.ILicensingService}

谷歌搜索后,我发现这是由LicenseChecker.java中的Google Licensing代码中的错误引起的,但建议的更改有点不同,所以我不知道该怎么做.它让我感到震惊,我们应该为Googles代码制作mod.

我的LicenseChecker.java中的可疑代码是......

        Log.i(TAG, "Binding to licensing service.");
        try {
            boolean bindResult = mContext
                    .bindService(
                            new Intent(
                                    new String(
                                            Base64.decode("Y29tLmFuZHJvaWQudmVuZGluZy5saWNlbnNpbmcuSUxpY2Vuc2luZ1NlcnZpY2U="))),
                            this, // ServiceConnection.
                            Context.BIND_AUTO_CREATE);
Run Code Online (Sandbox Code Playgroud)

我们应该补充一下

serviceIntent.setPackage("com.android.vending");
Run Code Online (Sandbox Code Playgroud)

代码中的某个地方.

所以我的问题是(1)这真的是修复吗?(2)如果是这样,修改后的代码到底应该是什么样的?谢谢,迪恩

android android-lvl android-5.0-lollipop

1
推荐指数
1
解决办法
1133
查看次数