可以自动将APK上传到Google Play的API?[关闭]


95

有没有可以让我自动将APK上传到Google Play的API或工具?我想自动将自定义的应用发布到我的帐户,而无需任何手动步骤或图形界面。

我四处搜索,但找不到任何用于执行此操作的API(仅android-publisher,但尽管名称,但不支持发布)。有人似乎已经解决了这个基本功能吗?


3
我不认为这有什么,但是这是一个有趣的问题
斯特凡

8
时代在变化-让评论反映出现在已经有这样的API-先前的评论和答案现在已经过时-正确的答案来自sharshi。
理查德·勒·马修里尔


对于那些通过网络搜索来到这里,只是想要答案的人,Fastlane是一款可自动执行Play Store和App Store部署的工具。
托马斯

Answers:


63

截止到今天,新的官方发布API允许您上传到任何频道(即alpha,beta ...)或更新标题和说明等。

从文档:

  • 上载新版本的应用程序,通过将APK分配给各种音轨(alpha,beta,分阶段推出或制作)来发布应用程序
  • 创建和修改Google Play商店列表,包括
  • 本地化的文字和图形以及多设备屏幕截图

在此处查找更多信息:https : //developers.google.com/android-publisher/


28
请注意,该API 适用于已发布的应用(至少上传了一个APK)。
Lao Lam 2014年

通过Google授权可能是一个窍门。这是通过命令行获取令牌的样子。PS .p12密钥提及只有在您使用命令“ openssl pkcs12 -in my_google_key.p12 -out my_google_key.pem -nodes -clcert”将其转换为.pem时,它才起作用
Vitalii 2014年


3
有谁知道仅更新现有应用程序的限制是否仍然适用?
里卡多·佩德罗尼

1
@Dokuzov是的仅更新
sharshi

22

gradle-play-publisher是Gradle插件,可将您的APK和应用程序详细信息上传到Google Play商店。

我只是./gradlew publishApkRelease从终端运行,它会上传APK和最近更改的摘要。还有更多类似的任务可用。

它使用Google Play开发者API


嗨,我是Gradle的新手,gradle-play-publisher说:“一旦将此插件应用于android应用程序项目,就可以通过play块对其进行配置”,我需要在哪里添加play块?
Aqib Mumtaz 2015年

在您的build.gradle档案中
CarloRodríguez

您能否分享您的构建文件?我不断收到此异常“ org.gradle.execution.TaskSelectionException:在根项目中找不到任务'publishApkRelease'”
Aqib Mumtaz


无论如何,不​​是真正活跃的项目
oldgod

20

没有正式的Google API可自动使用Google Play。(2014年7月之后不是这样)

您可以创建一个脚本来封装Web浏览器并模拟用户的行为:查找HTML字段,在此处输入信息,提交页面等。

我们正在开发这样的开源Python工具:https//github.com/onepf/AppDF/tree/master/tools/uploader


6
直到2014年7月下旬Google才发布发布API时,情况一直如此。有关更多信息,请参见sharshi的答案。
Lao Lam 2014年

3
现在这个答案是错误的。
理查德·勒·马修里尔

4

我在这个问题上也回答了这个问题,但是我想在这里添加相同的评论。让我知道这是否是错误的方法(重复答案)。

我能够创建一个gradle插件,使用新的Google Play发布API将发布发布到您想要的任何曲目,以获得所需的任何风味/变体。

在此处查看源代码:https : //github.com/bluesliverx/savillians-gradle

我正在将其发布到Maven Central,以便可以在构建脚本中使用它,但是现在您可以抓取android-publisher回购中的子目录,将其放在gradle构建的根目录中,并将文件夹重命名为buildSrc。在build.gradle您要发布的android项目的文件中使用以下行:

apply plugin: com.savillians.gradle.androidpublisher.AndroidPublisherPlugin

然后,您可以使用androidPublisherbuild.gradle文件中的块来设置发布设置。

android {
    ...
}
androidPublisher {
    applicationName = "Company-Name-Product-Name/1.0"
    packageName = "<package name>"
    serviceAccountEmail = "<service account email>"
    serviceAccountKeyFile = file('<p12 keyfile - NOT the json file>')
    track = "alpha" // default, don't need to specify
    variantName = "release" // default, don't need to specify
}

确保您创建的服务帐户具有“发布管理员”权限,下载p12密钥文件并将其放在项目的目录中。然后运行以下命令:

gradle androidPublish

它将使用您指定的凭据将其发送到Google Play。祝您好运,因为这是全新的,如果您有任何疑问,请与我们联系。


请找到stackoverflow.com/questions/29816342/…gradle androidPublish确实 会生成签名的apk并上传到playstore
Nevin Raj Victor

回答。该插件将满足您的需求。
bksaville 2015年

嗨@bksaville是此插件对现有应用程序的支持。我们不能用于新创建的应用程序。
Sajith Vijesekara

我发现在创建服务帐户时,我需要代替角色的“发布管理器”:在“角色”下拉列表中,选择“服务帐户”->“服务帐户用户”和“服务帐户令牌创建者”
Maks
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.