首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PiracyChecker无法检查该应用程序是否是从Google商店安装的

PiracyChecker无法检查该应用程序是否是从Google商店安装的
EN

Stack Overflow用户
提问于 2019-11-22 11:15:07
回答 1查看 596关注 0票数 6

我使用“com.github.javiersantos:PiracyChecker:1.2.3”是因为我的应用程序还没有集成AndroidX。

在我的应用程序的Google页面上,我有很多用户评论说,他们已经从Google商店安装了该应用程序,但是他们收到了盗版警告信息。

下面是一些示例:

还通过电子邮件获得了用户报告:

我的应用程序有4k评论,其中只有3个是这样的,但是我不知道确切的用户数量,因为可能有用户不评论这个问题。

怎么一回事?

我就是这样用的:

代码语言:javascript
复制
    public static void showPiracyActivityIfNeeded(final Activity activity) {
    if (!BuildConfig.DEBUG) {
        //Releaseb build, piracy check.
        new PiracyChecker(activity)
                .enableInstallerId(InstallerID.GOOGLE_PLAY)
                .callback(new PiracyCheckerCallback() {
                    @Override
                    public void allow() {
                    }

                    @Override
                    public void dontAllow(@NonNull PiracyCheckerError piracyCheckerError, @Nullable PirateApp pirateApp) {
                        Intent intent = new Intent(activity, PiracyWarningActivity.class);
                        activity.startActivity(intent);
                        activity.finish();
                    }
                })
                .start();
    }
}

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2019-11-28 15:54:03

看来你的谷歌游戏服务是不可用的。试着在启动PiracyActivity之前检查它

代码语言:javascript
复制
const val PLAY_SERVICES_RESOLUTION_REQUEST = 9000

fun AppCompatActivity.checkPlayServices(): Boolean {
    val apiAvailability = GoogleApiAvailability.getInstance()
    val resultCode = apiAvailability.isGooglePlayServicesAvailable(this)
    if (resultCode != ConnectionResult.SUCCESS) {
        if (apiAvailability.isUserResolvableError(resultCode)) {
            apiAvailability.getErrorDialog(this, resultCode, PLAY_SERVICES_RESOLUTION_REQUEST)
                .show()
        }
        return false
    }
    return true
}

然后:

代码语言:javascript
复制
public static void showPiracyActivityIfNeeded(final Activity activity) {
    if (!BuildConfig.DEBUG && activity.checkPlayServices()) { ...

还要注意的是,有很多设备由于各种原因关闭了Google服务,所以每次需要它时都要检查服务的可用性。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58993104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档