标签: google-play-developer-api

如何从Google Developer API获取订阅的历史付款列表?

通过使用Google Play Developer API和电话https://www.googleapis.com/androidpublisher/v2/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}(https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/get),可以获取有关订阅是否仍然有效的信息.

如何在orderId不猜测的情况下找出每笔付款(通过这样做:https://developer.android.com/google/play/billing/billing_subscriptions.html)?是否可以通过对API的服务帐户调用获取用户订阅的所有历史付款?(例如,使用purchaseToken和subscriptionId).

in-app-purchase google-play-developer-api

6
推荐指数
0
解决办法
452
查看次数

Google 云项目未在 Google 开发者控制台中列出 API 访问设置

我正在按照Google Play Developer API 指南链接我的谷歌云项目。

指南文档说我可以从列表中选择我想要链接的项目。但在我的游戏开发者控制台中,该列表没有显示。

相反,GooglePlay 开发者控制台 - 设置 - API 访问页面中有一个用于创建新项目的按钮。当我点击它时,它会在 GCP 上创建新项目并将我的 Play 开发者控制台链接到它。

我的帐户是两者的所有者,玩开发者控制台,谷歌云。

我需要做什么才能将现有的 Google Cloud 项目与 Google Play 开发者控制台链接起来?

google-cloud-platform google-play-developer-api

6
推荐指数
0
解决办法
302
查看次数

使用fastlane供应使用google play api上传多个APK应用

在为我们的移动项目设置连续部署管道时,我在通过谷歌的API将APK(签名和对齐)上传到Play商店时遇到了错误.

我正在使用fastlane的供应动作进行实际上传(使用google的ruby api客户端).

在alpha轨道上首次上传带有版本x的APK是成功的.

在Alpha轨道上第二次上传相同的APK及版本y失败,并显示以下消息:

multiApkDowngradedDevice:如果符合以下条件,则此应用版本为100144的设备将降级为版本100142:[(API_LEVEL在范围15-0和RELEASE_TRACK中包含[[ALPHA]]和SCREENS中的任何一个,包含[[ALPHA]]和SCREENS中的任何一个[ [小,正常,大,xlarge]]和NATIVE_PLATFORM包含[[x86_64(arm64-v8a),x86_64(armeabi-v7a),x86(armeabi-v7a)*]]和[功能]包含所有[android. hardware.TOUCHSCREEN,android.hardware.screen.PORTRAIT,android.hardware.WIFI])].

我无法找到有关此multiApkDowngradedDevice错误的信息,因为api的文档没有提到任何错误代码.

任何有关这方面的帮助将不胜感激

谢谢,

伯特

android google-play-developer-api fastlane

6
推荐指数
0
解决办法
954
查看次数

Google Play开发者API - 列出我帐户中的所有应用

按照本指南https://developers.google.com/android-publisher/api-ref/我试图找出是否有办法从我的谷歌播放控制台列出所有游戏,但我找不到任何.有没有方法列出我帐户中的所有应用和包名?

谢谢

google-play google-play-developer-api

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

应用内结算:ProductID和SubscriptionID是否相同?

我目前正在设计我的实施策略,以便在应用内结算中进行可能的状态更新(从已购买的状态到已取消的状态等等),这是一个非常令人头疼的问题,并且存在一个混乱:

我在应用程序中获取getPurchases().这给了我INAPP_PURCHASE_DATA包含表6的字段,其中包含以下字段:

autoRenewing,orderId,packageName,productId,purchaseTime,purchaseState,developerPayload,purchaseToken.

我想将一些变量发送到我的服务器(虽然只是buyToken似乎很有用),但有一些我不清楚的事情:
在服务器端,我想不断检查购买是否有效.我计划通过https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/get执行此操作

但是这个请求需要packageName,subscriptionIdtoken.令牌是purchaseTokengetPurchases() ,但是是subscriptionId的productIdgetPurchases()

当您在Google Play中调用用于创建产品列表的手册时,可以在此处的标题中看到此处在步骤4 中将项目一次添加到产品列表单击"创建被管理产品"或"根据需要创建订阅".你必须在第5步设置productId.

如果productId == subscriptionId,为什么有两个Google Play Developer API请求,一个用于"产品",一个用于"订阅",那么订阅是不是产品呢?看到:

https://developers.google.com/android-publisher/api-ref/purchases/products/get https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/get

第一个请求采用productId,但第二个请求是我没有的subscriptionId,但productId和subscriptionId是相同的.这非常令人困惑.

android in-app-purchase in-app-billing google-play-developer-api

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

querySkuDetailsAsync 回调从未调用过

我认为已正确遵循文档中的所有步骤,但我无法到达 querySkuDetailsAsync 的回调,没有报告错误。该应用程序可以与 IAB 正常工作,现在我只是从旧库迁移到新的“com.android.billingclient:billing:2.0.3”,但存在很多问题。另一个问题,在新库中还需要使用 Play Console 中的许可证密钥吗?我没有找到有关在新库中使用它的文档。

我可以正确无误地到达这条线billingClient.querySkuDetailsAsync(params, (billingResult2, skuDetailsList) ->

Sku ID 正确

    private void setupIab()
    {
        billingClient = BillingClient.newBuilder(getApplicationContext()).enablePendingPurchases().setListener(this).build();
        billingClient.startConnection(new BillingClientStateListener()
        {
            @Override
            public void onBillingSetupFinished(BillingResult billingResult)
            {
                if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK)
                {
                    List<String> skuList = new ArrayList<> ();
                    skuList.add("test_sku_1");
                    SkuDetailsParams params = SkuDetailsParams.newBuilder().setSkusList(skuList).setType(BillingClient.SkuType.INAPP).build();

                    billingClient.querySkuDetailsAsync(params, (billingResult2, skuDetailsList) ->
                    {
                        // Process the result.
                        if (billingResult2.getResponseCode() == BillingClient.BillingResponseCode.OK && skuDetailsList != null)
                        {
                        }
                    });

                }
            }

            @Override
            public void onBillingServiceDisconnected()
            {
                // Try to restart the …
Run Code Online (Sandbox Code Playgroud)

android in-app-purchase in-app-billing google-play-developer-api play-billing-library

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

Google 结算免费试用 - 同一用户多次

我们正在实施带有服务器端验证的 Google Billing。

我们必须支持的功能之一是“免费试用”。单个用户只能参与一次“免费试用”。

如果他取消订阅,然后尝试再次购买相同的订阅,则会出现一条注释“您已经参加了免费试用”(这意味着用户将无法获得试用期。相反,他必须立即付款)。该场景非常适合生产/生活环境。

然而,在测试环境(或开发环境,尤其是开发环境)中,我们做了很多尝试和重复步骤(这意味着我们多次使用同一个谷歌用户经历订阅生命周期),这是真正的痛苦屁股。对于每次迭代,我们都必须创建新的谷歌用户。

我的问题是:

1 - 有没有办法在测试环境(测试环境= google play测试轨道)中为特定用户(或所有人)重新启用“免费试用”。

或者

2 - 有其他方法可以让我们的生活更轻松吗?

google-play android-billing in-app-subscription google-play-developer-api google-play-console

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

是否有适用于 Google Play 开发者 API 的游乐场/沙箱?

是否可以为 Google Play 开发者 API 使用游乐场/沙箱?我非常感兴趣:

  • 检索一组评论
  • 检索个人评论
  • 回复评论

...根据https://developers.google.com/android-publisher/reply-to-reviews

最好写一篇测试评论,因为这样我就可以测试通过 API 发布回复。

android sandbox google-play google-play-developer-api

5
推荐指数
0
解决办法
398
查看次数

如何使用 PHP Api 访问 Google Cloud Storage Buckets 及其对象

首先,我是一名新手 php 开发人员,我的产品公司要求我自动安装和卸载其 Android 应用程序的报告,这些报告可在 Play 开发者控制台上找到。

我已经创建了一个服务帐户,并且正在按照以下文档(此处)中给出的步骤进行操作,但不知何故我被困在某个地方,并且似乎无法继续前进。我想定期获取应用程序安装和卸载的数据。

我安装了 google 客户端 php api 库,如下所示,这是我从 Github 获取-

include __DIR__.'/vendor/autoload.php'; 
Run Code Online (Sandbox Code Playgroud)

现在,在云存储示例中,他们提到了这样的事情 -

include __DIR__.'/vendor/autoload.php'; 

use Google\Cloud\Storage\StorageClient;
Run Code Online (Sandbox Code Playgroud)

并使用这个我收到以下错误 -

致命错误:未捕获错误:类“Google\Cloud\Storage\StorageClient”>在 /home/USERNAME/public_html/appreport/report/index.php:31 中找不到>堆栈跟踪:#0 {main} 在 >/home 中抛出/USERNAME/public_html/appreport/report/index.php 第 31 行

如果有人能帮助我解决这个问题那就太好了

php cloud storage google-cloud-storage google-play-developer-api

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

Google Play Developer API - 应用内更新优先级不起作用

我正在尝试设置应用程序内更新优先级参数,以便将新的 android 应用程序版本发布到 Play 商店。根据此文档,它应该可以工作:

  1. https://developer.android.com/guide/playcore/in-app-updates
  2. https://developers.google.com/resources/api-libraries/documentation/androidpublisher/v3/java/latest/com/google/api/services/androidpublisher/model/TrackRelease.html

但实际上并没有。也许我做错了什么。

下面是一个例子:

// creating AndroidPublisher instance in some way
AndroidPublisher androidPublisher = createPublisher(serviceKeyPath);

// creating new edit
AppEdit edit = androidPublisher.edits()
    .insert(APP_PACKAGE, null)
    .execute();
String editId = edit.getId();

// uploading APK
FileContent apkContent = new FileContent(APK_MEDIA_TYPE, new File(apkPath));
Apk apk = androidPublisher.edits()
    .apks()
    .upload(APP_PACKAGE, editId, apkContent)
    .execute();

// preparing release info
List<Long> versionCodes = Collections.singletonList(apk.getVersionCode().longValue());
TrackRelease trackRelease = new TrackRelease()
    .setName(getNewVersionName())
    .setReleaseNotes(getReleaseNotes())
    .setVersionCodes(versionCodes)
    .setStatus("completed")
    .setInAppUpdatePriority(5); // <-- value from 0 to 5
Track …
Run Code Online (Sandbox Code Playgroud)

java android google-play-developer-api

5
推荐指数
0
解决办法
909
查看次数