jen*_*ent 20 android in-app-purchase in-app-billing google-play android-studio
我在本地测试应用内订阅产品时遇到此错误.
验证是必需的.您需要登录您的Google帐户
我能够检查产品的库存但不应该也能购买它吗?
有很多帖子说明为什么会出现这个错误,我认为这个问题得到解决:
是通过beta/alpha频道测试实际购买的唯一方法 - 不是直接来自android studio.这篇文章表明它有可能(见屏幕截图)
http://developer.android.com/google/play/billing/billing_testing.html#billing-testing-test
jen*_*ent 46
实质上,应用内结算付款只能使用已发布签名的apk(我们上传到Google Play控制台的apk)进行测试.
以下是一些让我附加到已签名的apk的步骤Android Studio:
我在Windows上.它有助于adb.exe在PATH中,对我而言:
C:\用户{您的户名} \应用程序数据\本地\ Android的\ SDK \平台工具
AndroidManifest.xml以下application节点Run Code Online (Sandbox Code Playgroud)android:debuggable="true" tools:ignore="HardcodedDebugMode"
在您的xmlns:tools="http://schemas.android.com/tools"文件下build.gradle,添加:
android > buildTypes > release
从Android Studio生成已签名的APK
连接设备进行USB调试.删除当前安装:
debuggable true
adb uninstall {yourdomain}.{yourpackagename}
adb install app-release.apk菜单中,最后一个选项是"将调试器附加到Android进程" - 选择您的设备.你现在正在调试.对于应用内结算的NB,内部版本号需要与Play商店中当前发布的版本号相匹配
Mit*_*ton 31
以下为我从我的 IDE (Android Studio) 启动
1) 转到您的https://play.google.com/apps/publish/ 在“开发者”帐户/设置/帐户详细信息/许可证测试下
2) 添加与您正在测试的设备对应的“默认 Google Play”电子邮件地址
资料来源:https : //engineering.memrise.com/faster-in-app-billing-subscriptions-testing-8e68551b4e2f
是的,刚刚尝试过,它有效,认为它可以帮助别人节省时间。
一旦您上传应用程序进行封闭测试,然后进行更改并再次上传是一项繁琐的任务。经过这次重复的挫败之后,我在官方文档下找到了这个
通常情况下,Google Play 结算库会阻止未签名并上传到 Google Play 的应用程序。许可证测试人员可以绕过此检查,这意味着您可以旁加载应用程序进行测试,即使对于使用带有调试签名的调试版本的应用程序,也无需上传到应用程序的新版本。请注意,程序包名称必须与为 Google Play 配置的应用程序的名称匹配,并且 Google 帐户必须是 Google Play Console 帐户的许可证测试人员。
因此,作为 alpha 测试的结果,我添加了一个作为测试人员和许可的电子邮件帐户列表。我使用相同的版本密钥库运行代码,计费方式与 alpha 测试中完全相同。
只需确保在新的Play Console中添加用于许可的测试电子邮件即可。
小智 8
也许另一种方法:
在大多数情况下,这里的内容与此处提到的内容相似,只是您仅指向调试buildType中的发布密钥库。
确切步骤:1)在您的应用Gradle文件中的android标记中,添加发布签名配置:
signingConfigs {
release {
storeFile file("Path_to_your_Production_release_Keystore.jks")
storePassword 'your_keystore_password'
keyAlias 'your_key_alias'
keyPassword 'your_key_password'
}
}
Run Code Online (Sandbox Code Playgroud)
并将签名配置添加到调试buildType中:
buildTypes {
release {
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-project.txt', 'proguard-google-api-client.txt'
}
debug {
signingConfig signingConfigs.release
debuggable true
}
}
Run Code Online (Sandbox Code Playgroud)
2)确认versionCode并versionName在您的应用程序gradle这个> defaultConfig部分完全匹配什么在你上传到Play商店APK:
defaultConfig {
applicationId "com.groovypackagename.groovyapp"
minSdkVersion 16
targetSdkVersion 24
versionCode 56
versionName "0.9.6"
multiDexEnabled true
resConfigs "en"
}
Run Code Online (Sandbox Code Playgroud)
3)确保将清单权限添加到清单中:
<uses-permission android:name="com.android.vending.BILLING" />
4)不要忘记根据文档添加您的IAB(应用内结算)产品
5)设置断点并按常规进行调试。
6)成功欺骗代码后,请不要忘记至少清理gradle文件中的更改,例如删除签名配置,以使kestore密码不会在空间中浮动。
运气好的话,您将可以对IAB代码进行本地调试。
干杯。
| 归档时间: |
|
| 查看次数: |
11475 次 |
| 最近记录: |