Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GooglePlayへのアップロード自動化を試してみた
Search
Ryosuke Horie
March 12, 2015
Programming
8.7k
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GooglePlayへのアップロード自動化を試してみた
GooglePlayへのアップロード自動化を試す
Ryosuke Horie
March 12, 2015
More Decks by Ryosuke Horie
See All by Ryosuke Horie
Androidifyから学ぶFirebase AI Logic SDKの使い方
horie1024
0
80
GitHub Copilot Use Cases at ZOZO
horie1024
1
3.3k
Miro × ZOZO ZOZOのMiro活用事例紹介
horie1024
0
3.1k
GitHub Copilotは開発者の生産性をどれだけ上げるのか?ZOZOでの全社導入とその効果 / How Much Does GitHub Copilot Improve Developer Productivity? The Company-wide Implementation and Its Effects at ZOZO
horie1024
36
30k
ZOZOTOWNにおける開発生産性向上に関する取り組み / Initiatives to Improve Development Productivity at ZOZOTOWN
horie1024
8
6.8k
How does the Relay connect Android app development and Design?
horie1024
2
2.3k
既存画面の Jetpack Composeでの書き換え: FAANSでの事例紹介 / Case study of rewriting existing screens with Jetpack Compose
horie1024
0
2.1k
スキルマップを作った話 / Create a skills map
horie1024
3
4.8k
Miroを使った開発効率向上のための取り組み / Using Miro Efforts to Improve Development Efficiency
horie1024
0
2.7k
Other Decks in Programming
See All in Programming
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
160
今さら聞けない .NET CLI
htkym
0
180
継続モナドとリアクティブプログラミング
yukikurage
3
690
霧の中の代数的エフェクト
funnyycat
1
490
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
150
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
480
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
140
数百円から始めるRuby電子工作
tarosay
0
140
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
310
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
610
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
140
「人を評価する AI」の設計と実装
ryoyanara
0
180
Featured
See All Featured
Are puppies a ranking factor?
jonoalderson
1
3.8k
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
119
120k
Making the Leap to Tech Lead
cromwellryan
135
10k
Into the Great Unknown - MozCon
thekraken
41
2.7k
The untapped power of vector embeddings
frankvandijk
2
1.8k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
270
sira's awesome portfolio website redesign presentation
elsirapls
0
320
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
400
4 Signs Your Business is Dying
shpigford
187
22k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
430
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Transcript
GooglePlayͷΞοϓϩʔυ ࣗಈԽΛࢼͯ͠Έͨ VASILY,(Inc.(ງߐ 3/12ʲୈ15ճʳpotato*ps(iOS/Android։ൃTipsڞ༗ձ) ©"VASILY,"Inc.,"2015 1
ࣗݾհ • ງߐ"྄հ"@Horie1024" • ࡢ11݄͔ΒVASILYͰۈ • iQONͷ։ൃΛ୲ ©"VASILY,"Inc.,"2015 2
GooglePlayετΞ 2014ϕετΞϓϦ ©"VASILY,"Inc.,"2015 3
iQONͷ։ൃϑϩʔ • PullRequestϕʔεͷ։ൃ • releaseϒϥϯνΛ࡞͠PullRequest • releaseϏϧυΛݕূͰ֬ೝ • ϦϦʔεલʹmasterreleaseΛϚʔδ ©"VASILY,"Inc.,"2015
4
ݕূͷࣗಈԽ 1. GitHubͰPullRequestΛϚʔδ 2. CircleCI͕ϏϧυΛ։࢝ 3. SlackϏϧυͷ൱Λ௨ 4. DeployGateAPKΛΞοϓϩʔυ 5.
ݕূʹAPKͷߋ৽Λ௨ 6. APKΛΠϯετʔϧ ©"VASILY,"Inc.,"2015 5
ϦϦʔε࡞ۀ 1. relase͔ΒmasterPullRequest 2. CircleCIͰϏϧυ͠DeployGateͰ 3. ࠷ऴ֬ೝ 4. CircleCI͔ΒAPKΛμϯϩʔυ͠GooglePlayΞοϓϩʔυ 5.
ϦϦʔεྃ ©"VASILY,"Inc.,"2015 6
ϦϦʔε࡞ۀΛָʹ͍ͨ͠ • GooglePlayΞοϓϩʔυ͢Δ࡞ۀΛࣗಈԽ͍ͨ͠ ©"VASILY,"Inc.,"2015 7
ࣗಈԽͷํ๏ • GooglePlayDeveloperAPIΛ͏ • ݴޠผͰClientLibrary͕༻ҙ • h7ps:/ /developers.google.com/discovery/libraries ©"VASILY,"Inc.,"2015 8
औΓ͑ͣPythonͰࢼ͢ ©"VASILY,"Inc.,"2015 9
্ख͍ͬͨ͘ h"p:/ /qiita.com/Horie1024/items/ 0d3d50405f0b4bef1792 ©"VASILY,"Inc.,"2015 10
CircleCIͱ࿈ܞ͍ͤͨ͞ 1. masterPullRequest 2. ϚʔδΛτϦΨʔʹalphaͰGooglePlayΞοϓϩʔυ 3. alpha͔Βproduc8onʹϓϩϞʔτ͢Δ͜ͱͰϦϦʔεྃ ©"VASILY,"Inc.,"2015 11
• CircleCIͰ࣮ߦ͢Δͷ͕໘ • ֤छϥΠϒϥϦΠϯετʔϧɺґଘؔͷղܾ ©"VASILY,"Inc.,"2015 12
GradlePluginʹ͢Εྑ͍ʁ • JavaͷϥΠϒϥϦ͕༻ҙ͞ΕͯΔ • GradlePluginԽ͢ΕCircleCIͰͷ࣮ߦ؆୯ • ࡞ͬͯΈΑ͏ͱGradlePluginͷॻ͖ํΛௐ࢝ΊΔ • ॻ͚ͦ͏ʂ ©"VASILY,"Inc.,"2015
13
طʹ͋ͬͨ • gradle(play(publisher • APKΞοϓϩʔυ • Ϧιʔεཧ(ΞϓϦઆ໌จαϜωΠϧͷߋ৽) • alphaɺbetaɺproduc8onΛbuild.gradleͰࢦఆ ©"VASILY,"Inc.,"2015
14
gradle'play'publisherΛࢼ͢ • app/build.gradleʹՃ apply plugin: 'com.android.application' apply plugin: 'play' buildscript
{ repositories { mavenCentral() } dependencies { classpath ('com.github.triplet.gradle:play-publisher:1.0.2') { exclude group: 'com.google.guava' } } } android {ɾɾɾ} play { serviceAccountEmail = 'SERVICE_ACCOUNT_EMAIL' pk12File = file('KEY_PATH') track = 'alpha' } ©"VASILY,"Inc.,"2015 15
$"./gradlew"publishApkRelease ©"VASILY,"Inc.,"2015 16
CircleCI general: branches: only: - master machine: environment: ANDROID_HOME: /usr/local/android-sdk-linux
dependencies: override: - echo y | android update sdk --no-ui --filter "android-22,build-tools-22" test: override: - echo "Nothing to do here" deployment: master: branch: master commands: - ./gradlew publishApkRelease ©"VASILY,"Inc.,"2015 17
·ͱΊ • gradle(play(publisher0+0CircleCI • ؆୯ʹGooglePlayͷΞοϓϩʔυ͕ࣗಈԽͰ͖Δ ©"VASILY,"Inc.,"2015 18
VASILYͰΤϯδχΞΛืू͍ͯ͠·͢ʂ! ©"VASILY,"Inc.,"2015 19
͋Γ͕ͱ͏͍͟͝·ͨ͠ ©"VASILY,"Inc.,"2015 20