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
Androidアプリのリリースしてますか #potatotips
Search
FUJI Goro
August 20, 2014
Technology
6
2.3k
Androidアプリのリリースしてますか #potatotips
2014/8/20 potatotips 8 at Retty
FUJI Goro
August 20, 2014
Tweet
Share
More Decks by FUJI Goro
See All by FUJI Goro
How to Boost Your Code with WebAssembly
gfx
2
2.8k
AssemblyScriptでライブラリコードの高速化をしてみる
gfx
5
3k
実践TypeScriptトークバトル
gfx
1
1.1k
歴史的経緯の説明 as code
gfx
7
2.7k
Elasticsearchによる 全文検索の実装 in Rails
gfx
6
9.4k
すばらしきGraphQLのSEKAIへようこそ
gfx
20
9.2k
マルチテナント・ウェブアプリケーションの実践
gfx
14
9.5k
How to choose the ORM on Android
gfx
1
4.2k
How Do We Get Along With Static Types
gfx
5
3.3k
Other Decks in Technology
See All in Technology
Jetpack Composeで始めるServer Cache State
ogaclejapan
2
170
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
720
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
160
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
200
podman_update_2024-12
orimanabu
1
270
Microsoft Azure全冠になってみた ~アレを使い倒した者が試験を制す!?~/Obtained all Microsoft Azure certifications Those who use "that" to the full will win the exam! ?
yuj1osm
2
110
プロダクト開発を加速させるためのQA文化の築き方 / How to build QA culture to accelerate product development
mii3king
1
260
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
160
なぜCodeceptJSを選んだか
goataka
0
160
LINEヤフーのフロントエンド組織・体制の紹介【24年12月】
lycorp_recruit_jp
0
530
複雑性の高いオブジェクト編集に向き合う: プラガブルなReactフォーム設計
righttouch
PRO
0
110
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
180
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Visualization
eitanlees
146
15k
Optimizing for Happiness
mojombo
376
70k
Agile that works and the tools we love
rasmusluckow
328
21k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
Navigating Team Friction
lara
183
15k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Being A Developer After 40
akosma
87
590k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Transcript
AndroidΞϓϦ ϦϦʔεͯ͠·͔͢ Fuji, Goro (gfx) at Cookpad Inc. potatotips #8
2014/8/20 in Retty ‣ YES ‣ ͍
None
ࣗݾհ • ΫοΫύουͰϞόΠϧΤϯδχΞͬͯ·͢ • Android/iOSΞϓϦ։ൃͷੜ࢈ੑ㽉㽉Λ୲ • ࠷ۙͷ • Maven Centralͱܾผ͢ΔͨΊͷweb
serviceΛͭ͘Δʂ
ΞϓϦͷϦϦʔεͯ͠·͔͢ • ϦϦʔεΤϯδχΞϦϯά(releng)ͷλεΫෳࡶ • όʔδϣϯΛઃఆͯ͠ςετͯ͠Ϗϧυͯ͠apkʹ ॺ໊ͯ͠λάΛ͏ͬͯdeploygateʹ৴ͯ͠ google playʹΞοϓϩʔυͯ͠ߋ৽ใΛΞοϓ σʔτͯ͠ެ։ઃఆͯؔ͠ऀʹΞφϯεͯ͠ ެ։͞ΕͨΒGACrashlyticsΛோΊͯͯ͢
ͳͦ͞͏Ͱ͋ΕҰଉͭ͘
՝ɿrelengͷखॱ͕ෳࡶ͗͢Δ
λεΫΛղͯ͠ΈΔ • όʔδϣϯΛదͳͷʹઃఆ͢Δ • ࣗಈςετɾlintΛ࣮ߦ͢Δ • ΫϦʔϯϏϧυ͢Δ • ϦϦʔε༻ͷॺ໊ͷઃఆΛ͢ΔʢॳΊͯϦϦʔε͢Δͱ͖ͷΈʣ •
deploygate/testflightʹ৴͢Δ • Google PlayͰΞϓϦέʔγϣϯͷઃఆΛߦ͏ʢॳΊͯϦϦʔε͢Δͱ͖ͷΈʣ • Google Playʹupload͢Δ • Google Playͷߋ৽ใΛΞοϓσʔτ͢Δ • Google PlayͰެ։ͷઃఆΛ͢Δ • ࣾʹΞφϯε͢Δ • ϦϦʔεޙʹΫϥογϡΛࢹ͢Δ
relengλεΫଟ͗͢Δ݅ • λεΫ͕ଟ͍ͱԿ͔͕ൈ͚͕ͪʹͳΔ • ྫɿʮ͋ɺversion codeͷߋ৽ΛΕͨͷ ͰϏϧυ͠ͳ͓͠·͢ʯ • Կ͔ܦݧ͠ͳ͍ͱਖ਼͍͠खॱΛ౿Ή ͷ͕ෆՄೳ
ॺ໊ͷ • ॺ໊ͷઃఆΛbuild.gradleʹॻ͘ͷ͕μϧ͍ • keystoreϑΝΠϧΛΒ·͖ͨ͘ͳ͍͔Β JenkinsͰϦϦʔε༻apkΛ࡞ΔΑ͏ʹͯ͠ ͍Δ • ͦΕ͋ͬͯ͡ΊͯϦϦʔε͢Δͱ͖ʹ߹ ܭ10ߦ΄Ͳίϐϖ͠ͳ͍ͱ͍͚ͳ͍
Google PlayͷΞοϓϩʔυ • JenkinsͷϏϧυ݁Ռ͔ΒapkϑΝΠϧΛऔಘ • औಘͨ͠apkϑΝΠϧΛplayʹΞοϓϩʔυ • ख࡞ۀͳͷͰΘΓͱ໘͍͘͞
औΓΈ
ࣗಈԽ • όʔδϣχϯάͷ -> Jenkinsͷ BUILD_NUMBERΛ͔ͭ͏ • ॺ໊ͷ -> app-unsigned.apkʹ͋ͱ͔Βsign
͢Δ • Ξοϓϩʔυͷ -> Google Play Developer APIΛ͏
όʔδϣχϯάͷ • major.minor.patch.build ͷ4ύʔπ • ݱࡏͷAndroidΞϓϦ4.0.0.1 • build෦ΛJenkinsʹࣗಈͰৼΒͤΔ
ॺ໊ͷ • build.gradleʹॺ໊ઃఆ༻ίʔυΛίϐϖ͢Δͷ͕ͩͬͨ • ॺ໊ઃఆͤͣʹϏϧυͯ͋͠ͱͰॺ໊͢ΕղܾͰ͖Δͣ • $ jarsigner -verbose -sigalg
SHA1withRSA -digestalg SHA1 - keystore ~/.android/debug.keystore -storepass android ./ app/build/outputs/apk/app-product-release-unsigned.apk androiddebugkey • http://developer.android.com/tools/publishing/app-signing.html
Ξοϓϩʔυͷ • Google Play Developer APIΛ͏ • apkͷΞοϓϩʔυ • ެ։ઃఆʢalpha
/ beta / rollout / productionʣ • εΫϦʔϯγϣοτઆ໌จͳͲͷઃఆ • εΫγϣઆ໌จΛϦϙδτϦʹೖΕͯཧͰ͖Δͧʂ • ͍͔ͭ͘gradle plugin͕։ൃ͞Ε͍ͯΔʢະݕূʣ
ࣗಈԽͷঢ়گʢ✓ʣ • ✓ όʔδϣϯΛదͳͷʹઃఆ͢ΔʢJenkinsʣ • ✓ ࣗಈςετɾlintΛ࣮ߦ͢ΔʢJenkinsʣ • ✓ ΫϦʔϯϏϧυ͢ΔʢJenkinsʣ
• ✓ ϦϦʔε༻ͷॺ໊ͷઃఆΛ͢Δʢbuild.gradleΛฤू͠ͳͯ͘Α͍ʣ • ✓ deploygate/testflightʹ৴͢ΔʢJenkinsʣ • Google PlayͰΞϓϦέʔγϣϯͷઃఆΛߦ͏ʢॳΊͯϦϦʔε͢Δͱ͖ͷΈʣ • ✓ Google Playʹupload͢ΔʢGoogle Play Developer APIʣ • Google Playͷߋ৽ใΛΞοϓσʔτ͢Δ • Google PlayͰެ։ͷઃఆΛ͢Δ • ࣾʹΞφϯε͢Δ • ϦϦʔεޙʹΫϥογϡΛࢹ͢Δ
To be continued… • relengࣗಈԽͷՌ github.com/cookpad Ͱެ։͢Δ༧ఆͰ͢ • ଞͷࣗಈԽͰ͖ͯͳ͍ͱ͜ΖͲΜͲΜࣗಈ Խ͍͖͍ͯͨ͠
We are hiring @ Cookpad Inc. • iOS & Android
ΤϯδχΞืूத • https://info.cookpad.com/jobs/position/ios- android-app-engineer