Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android “什么是”呢;我们&x2019;我检测到你的应用程序正在使用旧版本的Google Play开发者API;谷歌开发者控制台中的警告?_Android_Google Api Java Client_Google Developers Console - Fatal编程技术网

Android “什么是”呢;我们&x2019;我检测到你的应用程序正在使用旧版本的Google Play开发者API;谷歌开发者控制台中的警告?

Android “什么是”呢;我们&x2019;我检测到你的应用程序正在使用旧版本的Google Play开发者API;谷歌开发者控制台中的警告?,android,google-api-java-client,google-developers-console,Android,Google Api Java Client,Google Developers Console,我们没有明确使用任何Google Play开发者API,但我们收到以下警告: 这与什么有关 我们目前正在使用Google Play Billing Library 1.2.2版本(2019-03-07) 我们不打算迁移Google Play Billing Library 2.0.1版(2019-06-06),因为这将是一项工作量巨大、收益甚微的工作 购买必须在三天内确认 但这只是我的猜测——Google Play计费库与Google Play开发者API有关。它们之间可能有关联,也可能没有关

我们没有明确使用任何Google Play开发者API,但我们收到以下警告:

这与什么有关

我们目前正在使用Google Play Billing Library 1.2.2版本(2019-03-07)

我们不打算迁移Google Play Billing Library 2.0.1版(2019-06-06),因为这将是一项工作量巨大、收益甚微的工作

购买必须在三天内确认

但这只是我的猜测——Google Play计费库与Google Play开发者API有关。它们之间可能有关联,也可能没有关联

“我们检测到您的应用程序正在使用旧版本的Google Play developer API”,这是什么意思

以下是我们的全部依赖项。你知道是什么引起了这个警告吗

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])


    implementation 'com.android.billingclient:billing:1.2.2'


    implementation 'androidx.multidex:multidex:2.0.1'


    def lifecycle_version = '2.0.0-beta01'
    // ViewModel and LiveData
    implementation "androidx.lifecycle:lifecycle-extensions:$lifecycle_version"


    // alternately - if using Java8, use the following instead of compiler
    implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version"


    def room_version = '2.1.0'
    implementation "androidx.room:room-runtime:$room_version"
    annotationProcessor "androidx.room:room-compiler:$room_version"

    def work_version = "2.1.0"
    implementation "androidx.work:work-runtime:$work_version"

    // https://github.com/yccheok/SmoothProgressBar
    implementation 'com.github.castorflex.smoothprogressbar:library:1.1.0'

    // For Google Drive REST API - https://github.com/gsuitedevs/android-samples/blob/master/drive/deprecation/app/build.gradle
    implementation('com.google.http-client:google-http-client-gson:1.26.0') {
        exclude group: 'org.apache.httpcomponents'
    }
    implementation('com.google.api-client:google-api-client-android:1.26.0') {
        exclude group: 'org.apache.httpcomponents'
    }
    implementation('com.google.apis:google-api-services-drive:v3-rev136-1.25.0') {
        exclude group: 'org.apache.httpcomponents'
    }

    implementation 'com.google.firebase:firebase-messaging:19.0.1'

    implementation 'com.google.android.gms:play-services-auth:17.0.0'

    implementation 'androidx.appcompat:appcompat:1.1.0-beta01'
    implementation 'androidx.preference:preference:1.1.0-beta01'
    implementation 'com.google.android.material:material:1.1.0-alpha07'

    implementation 'androidx.exifinterface:exifinterface:1.0.0'
    implementation 'androidx.gridlayout:gridlayout:1.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'com.google.code.gson:gson:2.8.5'

    implementation 'com.github.yccheok:AndroidDraw:0.18'
    implementation 'com.github.yccheok:SectionedRecyclerViewAdapter:0.4'
    implementation 'com.github.yccheok:CalendarView:1.10'

    implementation 'com.andrognito.patternlockview:patternlockview:1.0.0'

    implementation 'com.github.bumptech.glide:glide:4.7.1'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.7.1'

    implementation 'com.github.yccheok:PhotoView:0.1'

    implementation 'com.github.yccheok:Matisse:1.6'

    implementation 'com.jakewharton.threetenabp:threetenabp:1.1.1'

    // https://github.com/romandanylyk/PageIndicatorView
    implementation 'com.romandanylyk:pageindicatorview:1.0.2@aar'

    implementation 'me.zhanghai.android.materialratingbar:library:1.3.2'

    testImplementation 'junit:junit:4.12'

    testImplementation "org.robolectric:robolectric:4.2.1"
    testImplementation 'org.mockito:mockito-core:2.23.0'
    testImplementation 'org.powermock:powermock-core:2.0.0-RC.4'
    testImplementation 'org.powermock:powermock-module-junit4:2.0.0-RC.4'
    testImplementation 'org.powermock:powermock-api-mockito2:2.0.0-RC.4'

    androidTestImplementation 'androidx.test:runner:1.3.0-alpha01'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0-alpha01'
}
对于项目级依赖项,它是

dependencies {
    classpath 'com.android.tools.build:gradle:3.4.2'
    classpath 'com.google.gms:google-services:4.2.0'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

根据google文档,您不能使用google play开发者版本1和2,因为在文档中,他们提到他们正在迁移到版本3,应用内计费与此直接相关。

检查第一个链接来阅读它
一,

了解Google Play开发者API
检查

用于实现版本3
一,。
二,


希望这能对您有所帮助。

Google Play Developer API未直接用于您的应用程序(APK),因此您无法在build.gradle中修复它。它包含一些帮助您自动化应用程序发布(持续集成,CI)的服务,以及验证应用程序内购买的API

您应该检查后端如何验证应用内购买并更新至最新版本。您还可以检查CI服务器如何将APK上载到Play Store,并更新到最新版本


您可以在此处阅读有关Google Play开发者API的更多信息

这与计费无关,因为您没有服务器端验证。正如其他人提到的,这意味着你可能有一个相当严重的安全漏洞。那么,如何找到它呢

  • 在那里,你会看到一个“有访问权的用户”列表。一些是真实的,其他的是服务帐户。后者以
    @gcp-project-id.iam.gserviceaccount.com
  • 如果有任何您不认识的内容,请删除该帐户
  • 如果要进一步清理,请使用上面的
    gcp项目id
    转到gcp项目id
  • 不要删除这里的随机服务帐户,大多数是从其他各种谷歌服务自动生成的,如果它们消失了,东西就会坏掉。如果服务帐户不用于访问其他API,请删除访问Play Console的服务帐户

  • 问题在于,您在谷歌云平台上的项目使用的是开发人员Web API的旧版本。当您有意/无意地从Google Play Console的开发者设置中的API访问部分启用开发者服务时,它会自动为您设置

    订阅和购买的Web API实际上是Android开发者API的一部分:

    Google Play Developer API允许您执行许多发布和应用程序管理任务。它包括两个部分:

    订阅和应用内购买API允许您管理应用内购买和订阅。
    发布API允许您上载和发布应用程序,以及执行其他与发布相关的任务

    您未在应用程序中使用上述API,此API用于管理而非实际购买。您使用的SDK版本不同,因此无需升级。但是,此API是在您的GCP项目中设置的

    要查找GCP上与您的游戏机关联的项目,请转到以下链接:

    您只需转到GCP,找到您的项目,找到Google Android开发者API并在那里更改版本即可。或者,如果不使用API,您也可以禁用它。

    例如,我的GCP项目被自动命名为Google Play Android Developer,因此你的项目可能与之相同

    我在我的控制台上看不到选项,可能是因为他们在新项目中删除了它,但是如果您的项目已经在使用旧版本,您可能也会收到警告

    任何人都知道,“我们检测到你的应用程序 是否正在使用旧版本的Google Play开发者API

    对此消息的简单解释是:您或第三方应用程序正在点击api下方的

    https://www.googleapis.com/androidpublisher/v1/applications
    

    传递应用程序的程序包名称

    com.android.myapp
    
    在其他情况下,执行自动化任务,如

    Retrieve billing Info
    Publish app to store
    Retrieve review comments
    etc..
    
    尽管如此,这些api还是被弃用了,它们应该通过下面的api来代替

    https://www.googleapis.com/androidpublisher/v3/applications
    
    一些第三方插件已被确认触发此消息,原因很简单,因为它们正在使用不推荐使用的API来执行其操作

    例如:

    • ”“看
    • 使用Xamarin.Forms的android应用程序的分发渠道--请参阅
    • 有关Xamarin和Windows的信息,请参见
    也有可能是您引用了不推荐的api,可能是从服务器端引用的,也可能是在您自己的应用程序代码中引用的。底线是,
    某个地方的调用使用你的应用程序的
    包名
    命中了一个不推荐的api。我给您的建议是:
    如果您使用计费库,请更新您的计费库

    用来自

    API的使用也可以是间接的,不是由应用程序本身,而是由 第三方插件(例如用于发布新版本的插件)。许多的 第三方插件已经在使用API的版本3。如果你
    https://www.googleapis.com/androidpublisher/v3/applications