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
CA.apk #7 運用5年以上のAmebaアプリで取り組んでいること
Search
bowyer-app
March 26, 2019
Technology
0
270
CA.apk #7 運用5年以上のAmebaアプリで取り組んでいること
bowyer-app
March 26, 2019
Tweet
Share
More Decks by bowyer-app
See All by bowyer-app
How to make App Shortcuts
bowyer
0
43
sqlbrite with AutoValue
bowyer
1
440
Other Decks in Technology
See All in Technology
I tried making a solo advent calendar!
zzzzico
0
130
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.5k
国井さんにPurview の話を聞く会
sophiakunii
1
310
Digitization部 紹介資料
sansan33
PRO
1
6.4k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
12k
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1k
#22 CA × atmaCup 3rd 1st Place Solution
yumizu
1
120
製造業から学んだ「本質を守り現場に合わせるアジャイル実践」
kamitokusari
0
250
RALGO : AIを組織に組み込む方法 -アルゴリズム中心組織設計- #RSGT2026 / RALGO: How to Integrate AI into an Organization – Algorithm-Centric Organizational Design
kyonmm
PRO
3
620
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
820
わが10年の叡智をぶつけたカオスなクラウドインフラが、なくなるということ。
sogaoh
PRO
1
200
形式手法特論:コンパイラの「正しさ」は証明できるか? #burikaigi / BuriKaigi 2026
ytaka23
15
3.8k
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Believing is Seeing
oripsolob
0
19
A Soul's Torment
seathinner
2
2.1k
Leo the Paperboy
mayatellez
1
1.3k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
0
51
From π to Pie charts
rasagy
0
100
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
80
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
51k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Transcript
CA.apk #7 運用5年以上のAmebaア プリで取り組んでいること Takaya Shono
About me Takaya Shono @Amebaアプリ 2 bowyer-app BowyerApp
• Amebaアプリと僕 • 今のAmebaアプリはこんな感じ • Bitriseに移行した話←ここ本編 アジェンダ 3
Amebaアプリと僕 4 ・今のAmebaアプリは約5年ほど運用されて いる ・僕は2年ほどAndroidのブランクがある
突然ですが 5年運用しているアプリで使っ てる技術は 古いと思いませんか? 5
1. Kotlin化 71.2% 2. マルチモジュール 3. AndroidX導入済み 4. kotlinx-coroutines導入済み 5.
Android4.4切りました 6. レビューちょっと良くなりました 今のAmebaアプリはこんな感じ 6
1.Kotlin化 71.2% 2019/03/13 現在、 71.2% Kotlin化してます
2.マルチモジュール化してる マルチモジュール化してます。 2019/03/13 現在、ライブラリモジュール を含めて約30個のモジュールで構成され ています。
2019/01/10 にAndroid X導入済み 3.AndroidX導入済み
2018/08/28 に kotlinx-coroutines導入済み 4.kotlinx-coroutines 導入済み
2019/02/27 のリリースで Android4.4以下のサポートを切りました ※どうやって説得して切ることになったかなど 興味ある方は話しかけて下さい。 5.Android 4.4以下の サポート切りました https://ameblo.jp/staff/entry-12437766012.html
6.レビューちょっとよくなりました 不具合を出さないのはもちろんのこと、レビュー返信や CS連携強化によってレビュー回復してます 心の声 約4年前、「平均3.0は無謀だ」 と言われましたが、もうすぐ届きそうです ☺
5年運用している Amebaアプリですが それなりに新しいです。 13
さてここから本題 Bitriseを導入した話 14
1. Bitriseとは? 2. なぜ入れようと思ったのか? 3. 導入で何が出来るようになった? 4. 導入で困ったことは? 5. こんな工夫してます
Bitriseを導入した話 15
1. Bitriseとは? アプリに特化したCIサービス
2. なぜ入れようとしたのか?
環境移行の流れがあった • GitHub Enterprise→GitHubに移行予定があった • iOSもbitriseに移行予定があった →プロダクト全体で環境を統一しようという流れに乗っかった
ymlファイルが複雑 300行に渡るymlファイルはとても複雑で、初見ではメンテしづ らかった
3. 導入で何が出来るようになっ た?
初見でもメンテしやすくなった BitriseのWorkflowはGUIで直感的に操作できるの で、初見でもメンテしやすくなった
テスターへの配布がラク Slack通知のインストール動線からapkをインストール できるので、テスターへの配布がラクになりました。
4. 導入で困ったことは?
社内libraryが解決出来ない Bitriseから社内のmavenが解決出 来ず、ビルド出来なくなった
社内libraryを内部に持ち解決 各libraryのaarもしくはjarファイルをlibrary moduleとして内部に持たせることで、依存解 決しました
急にビルド出来なくなった 誰かが運用中のWorkflowを 直接編集したことにより、 ビルド出来なくなった → 直接編集ではなく、コピーで試してから導 入してもらうようにしました。 ただ、レビューの仕組みとか無いからつらいよ。。。
5. こんな工夫してます
Workflowの共通化 ・他のWorkflowでも使うような処理は共通処理として 定義し、再利用可能に ・prefixに「 _ 」をつけることで単体実行出来ない Workflowとして定義
並列実行 Bitrise Start Buildを使って、 Workflowを並列実行してま す。 ※本当は5つくらい実行したいのですが、iOSと 共通リソースなので2つで我慢してます。
まとめ Amebaアプリは古くない Kotlin化、マルチモジュール化、 AndroidX導入など、新しい技術いれ てます 社内libraryはlibrary moduleに 社内maven使っている場合は、aar やjarをlibrary moduleとして使いま
しょう 初見でもメンテしやすい Workflow操作はGUIなので、初見 でもメンテしやすいです 30