2014-05-02 178 views
13

我正在尋找一種方法,可以使用該方法將自己的應用自動發佈到Google Play商店中的Alpha和Beta測試流,從我的CI服務器上發佈。自動發佈Beta版Android應用到Google Play商店

我的CI設置如下:

  1. 的Android應用使用Android工作室(使用Eclipse真的不是我們的選擇)編寫的。
  2. 構建腳本使用Rake編寫,並運行Gradle任務以及Calabash-Android測試。
  3. 構建服務器是Teamcity 8+,目前託管在本地(儘管我們可能會轉移到雲中的Jenkins)。

已經通過計算器掃描的回答這個問題,發現只有一個是API to automatically upload apk to Google Play?這個問題的答案是不過一歲多,而我們都知道,一年就是在軟件開發生命週期,所以我希望事情可能會有所改善。

在發佈到這兩個流之後,我還有一個子問題,需要多長時間才能讓測試人員在商店中看到它們?我聽說24到48小時,考慮到發佈到製作的應用程序只需要幾個小時,似乎有點奇怪。

+2

品牌嶄新:Google只是提供了publish-api。檢查文檔@ https://developers.google.com/android-publisher/#publishing對不起 - 沒有完整的解決方案,但我自己正在通過設置剛纔的方式... – edovino

+0

這個問題的狀態是什麼? –

+0

@pauljriley可以分享如何上傳apk來玩商店嗎? – Erum

回答

19

更新:插件現在可以從maven central以com.savillians.gradle:android-publisher:0.4的形式獲得。將它添加到build.gradle中的buildscripts定義中,並按照以下所述應用它。

我有完全相同的問題,並且感謝@ edovino的評論和Google Play API示例,我能夠創建一個gradle插件,可以將您想要的任何風格/變體發佈到任何軌道。

看到這裏來源:https://github.com/bluesliverx/gradle-android-publisher

我工作的這個發佈到Maven中央,因此它可以在構建腳本中使用,但現在你可以抓住android-publisher子目錄回購,把它放在您的gradle build的根目錄,並將該文件夾重命名爲buildSrc。使用在build.gradle文件中的以下行要發佈的Android項目:

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

您可以在build.gradle文件使用androidPublisher塊然後設置您的發佈設置。

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。祝你好運,讓我知道,如果你有問題,因爲這是全新的。

+0

我目前正在嘗試使用此插件,但插件和類路徑配置不匹配。說它找不到指定的插件。 – user1810737

+0

它如何知道使用哪個APK? – user1810737

+0

@ user1810737,你是否將它添加到buildscripts配置塊而不僅僅是正常的依賴關係?它使用variantName來決定要獲取哪個APK。除非您定義自己的變體,否則發佈的默認應該可以正常工作。 – bksaville

5

如果您使用的是Jenkins,則Google Play Android Publisher Plugin可讓您自動上傳Alpha或Beta版本。

例如,您也可以使用它將APK從Alpha,「測試版」或「測試版」升級到分階段發佈。

還包括多個APK支持以及上載(或重新使用)擴展文件的功能。

通過與Jenkins中的憑證功能集成,該插件可以安全地訪問您的Google Play帳戶,而無需檢查存儲庫中的私鑰或類似內容。

相關問題