- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我们没有明确使用任何 Google Play 开发者 API,但我们收到以下警告:
这与https://developer.android.com/google/play/billing/billing_library_releases_notes 有关系吗? ?
我们目前正在使用 Google Play 结算库 1.2.2 版(2019-03-07)
我们不打算迁移 Google Play 结算库 2.0.1 版本 (2019-06-06),因为这会带来很多工作而收效甚微。
Purchases must be acknowledged within three days
但这只是我的猜测 - Google Play 结算库与 Google Play Developer API 相关。它们可能相互关联,也可能不相互关联。
“我们检测到您的应用正在使用旧版本的 Google Play 开发者 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 Cloud Platform 上使用的是旧版本的 Developer Web API。当您从 Google Play 控制台的开发者设置中的 API 访问 部分有意/无意地启用开发者服务时,它会自动为您设置。
用于订阅和购买的 Web API 实际上是 Android Developer API 的一部分:
The Google Play Developer API allows you to perform a number of publishing and app-management tasks. It includes two components:
The Subscriptions and In-App Purchases API lets you manage in-app purchases and subscriptions.
The Publishing API lets you upload and publish apps, and perform other publishing-related tasks.
您在您的应用中没有使用上述 API,此 API 用于管理而非实际购买。您正在使用具有不同版本的 SDK,因此无需升级。不过,此 API 是在您的 GCP 项目中设置的。
要查找 GCP 上的哪个项目与您的 Play 管理中心相关联,请访问以下链接: https://play.google.com/apps/publish/#ApiAccessPlace
您只需要转到 GCP,找到您的项目,找到 Google Android Developer API 并在那里更改版本。或者,如果您不使用 API,您可以禁用它。
例如,我的 GCP 项目被自动命名为 Google Play Android Developer,因此您的可能与您的项目相同。
我在控制台上看不到一个选项,可能是因为他们为新项目删除了它,但如果您的项目已经在使用旧版本,您可能也会在那里收到警告。
关于android - 什么是 "We’ 在 Google Developer Console 中检测到您的应用正在使用旧版本的 Google Play 开发者 API“警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56700332/
我有一个加号/减号按钮,希望用户不能选择超过 20 个但不知道如何让它工作。我尝试使用 min="1"max="5 属性,但它们不起作用。这是我的代码和一个 fiddle 链接。https://jsf
我正在尝试复制顶部底部图,如示例 here但它没有正确渲染(紫色系列有 +ve 和 -ve 值,绿色为负值)留下杂乱的人工制品。我也在努力创建一个玩具示例来复制这个问题,所以我希望尽管我缺乏数据,但有
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 已关闭 6 年前。 社区去年审查了是
这个问题在这里已经有了答案: Adding two positive integers gives negative answer.Why? (4 个答案) 关闭 5 年前。 我遇到了一个奇怪的问题
有谁知道如何将字符串值类型 -4,5 或 5,4 转换为 double -4.5 或 5.4? 最佳答案 只需使用 Double.parseDouble(Locale, String); 糟糕,我很困
我正在尝试根据 TextBlob 分类插入一个仅包含“正”或“负”字符串的新数据框列:对于我的 df 的第一行,结果是 ( pos , 0.75, 0.2499999999999997)我想要' 正
我对 VBA 非常陌生,无法理解如何在一个循环中完成 2 个任务。我非常感谢您的帮助。 我已经能够根据第 3 列中的数据更改第 2 列中的数值,但我不明白如何将负值的字体更改为红色。 表格的大小每月都
欢迎, 我正在使用 jquery 通过 POST 发送表单。 这就是我获得值(value)的方式。 var mytext = $("#textareaid").val(); var dataStrin
double d = 0; // random decimal value with it's integral part within the range of Int32 and always p
我有这个字符串: var a='abc123#xyz123'; 我想构建 2 个正则表达式替换函数: 1) 用 '*' 替换所有确实有 future '#'的字符(不包括'#') 所以结果应该是这样的
我正在使用 DialogFragment。当用户从 Gmail 平板电脑应用程序的屏幕与下面示例图片中的编辑文本进行交互时,我希望正面和负面按钮保持在键盘上方。 在我的尝试中不起作用,这是我的 Dia
从组装艺术一书中,我复制了这句话: In the two’s complement system, the H.O. bit of a number is a sign bit. If the H.O
是否有更好更优雅的方法来实现下面的简单代码(diffYear、A 和 B 是数字): diffYear = yearA - yearB; if (diffYear == 0) { A = B
我正在设计一种语言,并尝试确定 true 应该是 0x01 还是 0xFF。显然,所有非零值都将转换为 true,但我正在尝试确定确切的内部表示。 每种选择的优点和缺点是什么? 最佳答案 没关系,只要
在我的 dialogfragment 类的 OnCreateDialog 中,我正在这样做: AlertDialog.Builder builder = new AlertDialog.Builder
这个问题在这里已经有了答案: Resolving ambiguous overload on function pointer and std::function for a lambda usin
我偶然发现了一个奇怪的 NSDecimalNumber 行为:对于某些值,调用 integerValue、longValue、longLongValue 等,返回意想不到的值(value)。示例: l
这个问题在这里已经有了答案: Resolving ambiguous overload on function pointer and std::function for a lambda using
我有这个正则表达式来测试用户输入是否有效: value.length === 0 || value === '-' || (!isNaN(parseFloat(value)) && /^-?\d+\.
我想用高斯混合模型拟合数据集,数据集包含大约 120k 个样本,每个样本有大约 130 个维度。当我使用 matlab 执行此操作时,我运行脚本(簇号为 1000): gm = fitgmdist(d
我是一名优秀的程序员,十分优秀!