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
KMMのCI/CD
Search
Masatoshi Kubode
March 10, 2023
Programming
3
890
KMMのCI/CD
https://testnight.connpass.com/event/274733/
Masatoshi Kubode
March 10, 2023
Tweet
Share
More Decks by Masatoshi Kubode
See All by Masatoshi Kubode
ウォンテッドリーの「ココロオドル」モバイル開発 / Wantedly's "kokoro odoru" mobile development
kubode
2
1.1k
Firebase Dynamic Linksの代替手段を自作する / Create your own Firebase Dynamic Links alternative
kubode
0
560
技術を根付かせる / How to make technology take root
kubode
1
390
WantedlyでのKotlin Multiplatformの導入と課題 / Kotlin Multiplatform Implementation and Challenges at Wantedly
kubode
0
500
Google Play Consoleデベロッパー アカウントの確認 / Verifying your Play Console developer account
kubode
1
1.3k
Make your Android app into Multiplatform app
kubode
0
170
ウォンテッドリーにおけるモバイルアプリ開発 / iOSDC Japan 2024 Sponsor Session
kubode
1
1.2k
Jetpack ComposeのBottomSheetとの戦い / Fight with BottomSheet of Jetpack Compose
kubode
0
920
Mobile Chapterが目指すところと技術 / Vision and Technology of Mobile Chapter at Wantedly
kubode
0
370
Other Decks in Programming
See All in Programming
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
500
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
0
400
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
190
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
630
CSC509 Lecture 02
javiergs
PRO
0
410
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
170
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
2
480
実践AIチャットボットUI実装入門
syumai
7
2.5k
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
360
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
240
階層構造を表現するデータ構造とリファクタリング 〜1年で10倍成長したプロダクトの変化と課題〜
yuhisatoxxx
3
940
ててべんす独演会〜Flowの全てを語ります〜
tbsten
1
220
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
431
66k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Code Reviewing Like a Champion
maltzj
525
40k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
4 Signs Your Business is Dying
shpigford
185
22k
Automating Front-end Workflow
addyosmani
1371
200k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Practical Orchestrator
shlominoach
190
11k
Docker and Python
trallard
46
3.6k
The Invisible Side of Design
smashingmag
301
51k
Transcript
©2023 Wantedly, Inc. KMMͷCI/CD KMM։ൃʹ͔ܽͤͳ͍CI/CDͷߏஙํ๏ Android Test Night #8 2023/03/10
ٱอग़խढ़
©2023 Wantedly, Inc. XXXXBOUFEMZDPNJELVCPEF
©2023 Wantedly, Inc. w ,..ͷ$*$%ͷඞཁੑ w $%ߏஙύλʔϯ w 8BOUFEMZͰͷ࣮ྫ ΞδΣϯμ
©2023 Wantedly, Inc. ,..ͷ$*$%ͷඞཁੑ
©2023 Wantedly, Inc. ,..ͱ https://kotlinlang.org/lp/mobile/
©2023 Wantedly, Inc. ,..ͷσϦόϦʔϫʔΫϑϩʔ
©2023 Wantedly, Inc. $*ͷඞཁੑ 🐞 🐞 🐞 ✅ ✅ ✅
खΓΛݮΒͯ͠KMMΛ҆શ͔ͭ༰қʹมߋ͢ΔͨΊʹඞཁʂ
©2023 Wantedly, Inc. $%ͷඞཁੑ σϦόϦʔΛૣΊΔʹʁ 👉 KMMͷσϦόϦʔΛૣΊΔ 👉 ͍ͱશମύϑΥʔϚϯεԼ
©2023 Wantedly, Inc. ,..ͷσϦόϦʔ
©2023 Wantedly, Inc. ,..ͷσϦόϦʔ
©2023 Wantedly, Inc. .POPSFQP
©2023 Wantedly, Inc. 1SPT • KMM୯ମͷCI/CDߏஙߟ͑ͳͯ͘ྑ͍ • ςϯϓϨ͕͋Δ $POT •
طଘΞϓϦʹద༻ͮ͠Β͍ • KMM&iOSˍAndroidಉ࣌ʹมߋΛՃ͑ͳ͚ΕͳΒͳ͍ͷͰཁٻϨϕϧ͕ߴ͍ .POPSFQP
©2023 Wantedly, Inc. (JUTVCNPEVMF
©2023 Wantedly, Inc. 1SPT • KMMͷมߋΛऔΓࠐΉλΠϛϯάiOS/AndroidͰܾΊΔ • طଘΞϓϦʹऔΓࠐΈ͍͢ $POT •
Git submoduleͷѻ͍͕͍͠ • iOS։ൃʹJDK͕ඞཁʹͳΔ (JUTVCNPEVMF
©2023 Wantedly, Inc. ύοέʔδϚωʔδϟʔ
©2023 Wantedly, Inc. 1SPT • KMMͷมߋΛऔΓࠐΉλΠϛϯάiOS/AndroidͰܾΊΔ • طଘΞϓϦʹऔΓࠐΈ͍͢ • iOS/AndroidଆͰಛผͳڥߏங͕ෆཁ
$POT • SwiftPM, CocoaPods, Mavenࣗମͷڥߏங͕͍͠ • KMMʹόʔδϣϯΛׂΓৼΒͳ͚ΕͳΒͳ͍ ύοέʔδϚωʔδϟʔ
©2023 Wantedly, Inc. $%ߏங ύοέʔδϚωʔδϟʔ
©2023 Wantedly, Inc. w J04ͷͨΊʹNBD04্ͰͷϏϧυ͕ඞਢ w ͍׳ΕͯΔJ04ͷαʔϏεʹͤΔͱΑ͍ $*$%αʔϏεͷબ
©2023 Wantedly, Inc. ύοέʔδϚωʔδϟʔΛͬͨߏஙํ๏ͷհ w "OESPJE.BWFO (SBEMFͰ w J04ߏஙύλʔϯͭΛհ $%
©2023 Wantedly, Inc. $%"OESPJE 1. όʔδϣϯΛܾΊͯpublish 2. Mavenʹshared.aar͕Ξοϓϩʔυ 3. Maven͔ΒόʔδϣϯΛࢦఆͯ͠μϯϩʔυ
4. Androidʹมߋ͕औΓࠐ·ΕΔ
©2023 Wantedly, Inc. $%"OESPJE՝ ΠςϨʔγϣϯͷ͕͔͔࣌ؒΔ՝
©2023 Wantedly, Inc. $%"OESPJEϩʔΧϧ։ൃ Composite Build settings.gradleʹincludeBuild() ϩʔΧϧͷKMMͷมߋ͕ଈө͞ΕΔ
©2023 Wantedly, Inc. ͭհ $%J04
©2023 Wantedly, Inc. $%J044XJGU1.PS$PDPB1PET 1. όʔδϣϯΛܾΊͯdeploy 2. ύοέʔδϚωʔδϟʔͷrepoʹΞοϓϩʔυ 3. όʔδϣϯΛࢦఆͯ͠μϯϩʔυ
4. iOSʹมߋ͕औΓࠐ·ΕΔ
©2023 Wantedly, Inc. $%J04(SBEMF 1. όʔδϣϯΛܾΊͯpublish 2. MavenʹklibܗࣜͰΞοϓϩʔυ 3. iOSϓϩδΣΫτͷGradleϞδϡʔϧґଘՃ
4. wrapperϞδϡʔϧ͕frameworkϏϧυ 5. frameworkΛऔΓࠐΉ 6. iOSʹมߋ͕औΓࠐ·ΕΔ
©2023 Wantedly, Inc. 1SPT • SPMCocoaPods private repoෆཁ • ޙड़͢ΔϩʔΧϧ։ൃ͕͍͢͠
$POT • iOSͷϏϧυதʹGradleϏϧυ͕ೖΓࠐΉ • JDK͕ඞཁ • Ϗϧυ͕͍࣌ؒ $%J04(SBEMF
©2023 Wantedly, Inc. $%J04(SBEMFϩʔΧϧ։ൃ Composite Build settings.gradleʹincludeBuild() ϩʔΧϧͷKMMͷมߋ͕ଈө͞ΕΔ
©2023 Wantedly, Inc. 8BOUFEMZͰͷ࣮ྫ
©2023 Wantedly, Inc. (JUTVCNPEVMF 8BOUFEMZͰͷ࣮ྫ .BWFO$PDPB1PET
©2023 Wantedly, Inc. 8BOUFEMZͰͷ࣮ྫ όʔδϣϯΛϏϧυ൪߸͔ΒࣗಈͰܾΊΔ 👉 όʔδϣϯΛߟ͑Δख͔ؒΒ։์ KMMͷϝΠϯϒϥϯνϚʔδͰ iOS/AndroidPRΛཱͯΔ 👉
ϘλϯΛԡͤऔΓࠐΊΔ ͦͯ͠վળ
©2023 Wantedly, Inc. ·ͱΊ
©2023 Wantedly, Inc. w ,..Ͱͷ$*$%ͷॏཁੑΛઆ໌ w ߏஙύλʔϯͱ࣮ྫΛհ w ࠓޙվળ͠ଓ͚͍ͨ ·ͱΊ
ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ©2023 Wantedly, Inc. 5IBOLT