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.2k
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
2.9k
実践TypeScriptトークバトル
gfx
1
1.1k
歴史的経緯の説明 as code
gfx
7
2.7k
Elasticsearchによる 全文検索の実装 in Rails
gfx
5
9.4k
すばらしきGraphQLのSEKAIへようこそ
gfx
20
9.2k
マルチテナント・ウェブアプリケーションの実践
gfx
14
9.4k
How to choose the ORM on Android
gfx
1
4.1k
How Do We Get Along With Static Types
gfx
5
3.3k
Other Decks in Technology
See All in Technology
AGIについてChatGPTに聞いてみた
blueb
0
130
電話を切らさない技術 電話自動応答サービスを支える フロントエンド
barometrica
2
360
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
7
720
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
650
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
490
FlutterアプリにおけるSLI/SLOを用いたユーザー体験の可視化と計測基盤構築
ostk0069
0
180
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
180
SDN の Hype Cycle を一通り経験してみて思うこと / Going through the Hype Cycle of SDN
mshindo
3
240
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
29
13k
SAP Community and Developer Update
sygyzmundovych
0
350
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
1k
Next.jsとNuxtが混在? iframeでなんとかする!
ypresto
2
940
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
730
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Faster Mobile Websites
deanohume
305
30k
Automating Front-end Workflow
addyosmani
1366
200k
Facilitating Awesome Meetings
lara
50
6.1k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
850
The World Runs on Bad Software
bkeepers
PRO
65
11k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
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