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
DMM 次世代SDK開発チーム
Search
yuki tamazawa
January 26, 2021
Business
0
390
DMM 次世代SDK開発チーム
yuki tamazawa
January 26, 2021
Tweet
Share
More Decks by yuki tamazawa
See All by yuki tamazawa
DMM.swift#1 Mergeable Libraryを試した
srea
1
470
アラートなどの割り込み表示を制御する
srea
1
480
mablりましょう。
srea
0
880
OSSと私
srea
1
480
ソフトウェア品質を支える E2Eテストのパイプライン作り
srea
3
3.1k
Other Decks in Business
See All in Business
株式会社トリビュー|採用ピッチ資料
tribeau
1
120
AI検索エンジンとは?おすすめの9個のAI検索ツールと活用ガイド(特徴・メリット・デメリット・仕組みを徹底解説!)(スライド版)
itarutomy
0
120
Must ➡ Can ➡ Will で考えるキャリア
tumada
PRO
32
8k
Mercari-Fact-book_jp
mercari_inc
3
140k
会社資料
kanno
0
320
【全ポジション共通】㈱エグゼクション/会社紹介資料
exe_recruit
1
860
これまでに存在しない業務フローは どう作っていくか?ドメインエキスパートやビジネスサイド、 チーム一丸となって取り組むドメインモデリング
iwamatsu0430
6
1.1k
enechain company deck
enechain
PRO
6
84k
ネオキャリア新卒採用サイト_会社説明スライド
neo_recruit
1
72k
株式会社スピークバディ 会社紹介資料
speakbuddy
1
210k
ホットリンク会社紹介スライド / We are hiring
hottolink_pr
1
2.9k
採用ピッチ資料.pptx.pptx.pdf
canvas_recruit
0
350
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
39
2.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
38
9.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
230
17k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
41
6.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
157
15k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
45
4.8k
Writing Fast Ruby
sferik
623
60k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
354
29k
Designing with Data
zakiwarfel
98
5k
How to name files
jennybc
75
98k
Why You Should Never Use an ORM
jnunemaker
PRO
53
8.9k
Transcript
Yuki Tamazawa / DMM Android Meetup #4 2021-01-26 ࣍ੈSDK։ൃνʔϜ DMMΞϓϦͷϓϥοτϑΥʔϜઓུ
• ۄᖒ ༟و • CTOࣨࣄۀࢧԉνʔϜॴଐ • DMM PointClubSDKͷ։ൃ • https://github.com/srea/
ࢲʹ͍ͭͯ
͓͢͠Δ༰ • ࣍ੈSDKνʔϜͱ • ϩάΠϯSDKʹ͍ͭͯ • SDK։ൃͰඞཁʹͳΔ؍ • ·ͱΊ
࣍ੈSDK։ൃνʔϜͱ
࣍ੈSDK։ൃνʔϜͱ ϛογϣϯɺ ɹࣗࣾͰఏڙ͢ΔΞϓϦͷάϩʔεϋοΫߩݙ͠ɺ Ձͷ࠷େԽΛࢦ͢ ࣗࣾΞϓϦΛରͱͨ͠SDK։ൃ෦ୂɺࡢळࠒʹνʔϜԽ DMM͕ఏڙ͢ΔΞϓϦΛԣஅͨ͠ϓϥοτϑΥʔϜઓུͷ̍ͭΛ୲͍ͬͯΔ
࣍ੈSDK։ൃνʔϜͱ ϓϥοτϑΥʔϜ։ൃ෦ ࣍ੈSDK։ൃνʔϜ ଞଟ…
ϝϯόʔߏ Ϧʔμʔɿ໊̍ Androidɿ໊̎ʢɹCTOࣨ ࣄۀࢧԉ໊̍ʣ iOSɿ໊̎ʢɹCTOࣨ ࣄۀࢧԉ໊̎ʣ ܭ໊̑ͰSDKͷاըɾ։ൃɾαϙʔτͳͲΛߦͳ͍ͬͯΔɻ
ఏڙ͍ͯ͠ΔSDK • ϩάΠϯSDK • ଞɺτϥοΩϯάSDKͳͲΛݕ౼ • ͦͷଞɺӡ༻͕ࢭ·͍ͬͯΔSDKͷࠓޙͷํܾఆͳͲ
ͳͥSDK͔ • DMM ͕ Tech Vision Λܝ͛ɺ ࠓޙ 10 Ͱ
300 ࣄۀΛग़Ͱ͖Δ৫ྗΛࢦ͢தͰɺ ΞϓϦͷଘࡏແࢹͰ͖ͳ͍ • ૉૣ͍αʔϏε্ཱͪ͛ • σʔλੳ • αʔϏεؒͷମݧ࣭ͷ౷Ұ ͜ͷลΓΛSDKͱ͍͏ܗͰԣஅతʹϑΥϩʔ͠ɺTech Visionͷ࣮ݱΛࢦ͢ɻ
ϩάΠϯSDKʹ͍ͭͯ
ϩάΠϯSDKʹ͍ͭͯ • ΞϓϦͰϩάΠϯɾ৽نొΛ؆୯ʹ࣮ݱ͢ΔͨΊͷػೳΛఏڙ • DMMΞΧϯτΛར༻͢ΔΞϓϦͷ΄ͱΜͲͰಋೖ͞Ε͍ͯΔ
ϩάΠϯSDKͷׂ • OpenID ConnectͷೝՄίʔυϑϩʔશൠͷίϯτϩʔϧ • ΞΫηετʔΫϯͷཧߋ৽ • IDTokenͳͲͷೝՄใͷཧ
None
ۙͷνʔϜͷಈ͖ • ϩάΠϯSDKͷϦϓϨΠε • Android / iOS ڞʹ࠷৽ͷϓϥοτϑΥʔϜʹ߹Θͤͨઃܭ৽ • AndroidɿJava
-> Kotlin • iOSɿObjective-C -> Swift
SDK։ൃͰඞཁʹͳΔ؍
SDK։ൃͰඞཁʹͳΔ؍ • ։ൃ • ӡ༻
։ൃ࣌ͷ؍ • ಋೖͷ͢͠͞ • ରԠOSόʔδϣϯ͘ • OSSʹͳΔ͘ґଘ͠ͳ͍ • ͔Γ͍͢Τϥʔϝοηʔδ •
ςετ
ಋೖͷ͢͠͞ ෯͍ಋೖख๏ͷରԠͱɺαϯϓϧϦϙδτϦͷ༻ҙ • Android • Gradle / Maven • iOS
• SwiftPM / CocoaPods / Carthage / XCFramework
ରԠOSόʔδϣϯ͘ • ࣄۀ෦ଆ͕ಋೖ͢ΔͨΊʹɺαϙʔτόʔδϣϯΛ্͛Δঢ়گආ͚Δ • ͨͩ͠ɺରԠίετ͕૿͑Δ߹ɺϢʔβʔͷར༻όʔδϣϯΛݟͯஅ
OSSʹͳΔ͘ґଘ͠ͳ͍ • ΞϓϦଆͰಋೖ͍ͯ͠Δͱڝ߹͕ى͜Δ • OSSͷόʔδϣϯΞοϓ͕ࠔ SDK ΞϓϦ ϥΠϒϥϦA v2.0.0 ϥΠϒϥϦA
v1.3.0
͔Γ͍͢Τϥʔϝοηʔδ ૉૣ͘ಛఆ͢ΔͨΊʹ։ൃऀ͚ͷσόοά࣌ͷϩάৄࡉʹ ઃఆ࿙Ε࣮ϛεͳͲɺ࣍ͷΞΫγϣϯʹͭͳ͕ΔώϯτΛ • ѱ͍ྫ ʮΞΫηετʔΫϯͷऔಘʹࣦഊ͠·ͨ͠ʯ • ྑ͍ྫ ʮKeychain͔ΒͷΞΫηετʔΫϯͷऔಘʹࣦഊ͠·ͨ͠ɻAccessGroup CapabilityͷઃఆΛݟ͍ͯͩ͘͠͞ɻʯ
ςετ • SDKͰ͕ى͜ΔͱӨڹൣғ͕͍ • ಛʹUI͕བྷΉ෦͕ى͖͍͢ • ৽OSૣΊʹಈ࡞ݕূΛߦ͓ͬͯ͘ • σϞΞϓϦͰOSຖʹUIςετ͕ࣗಈԽ͞Ε͍ͯΔͱڧ͍
ӡ༻࣌ͷ؍ • σʔλۦಈ • ࣾͷීٴ • τϥϒϧγϡʔςΟϯάूͷ༻ҙ
σʔλۦಈ • SDK͕ظͨ͠ՁΛग़͍ͯ͠Δͷ͔ΛܧଓΥον • ԾઆݕূαΠΫϧͷ࣮ࢪ
ࣾͷීٴ • Ϣʔβʔ͕ར༻ͯ͠ॳΊͯՁ͕͔Δɻ ։ൃ ಋೖ ϦϦʔε ར༻ Ձ
τϥϒϧγϡʔςΟϯάूͷ༻ҙ • ࣗݾղܾΛଅ͢͜ͱ͕Ͱ͖Δ • αϙʔτෛՙΛ͑ΒΕΔ
SDKઓུΛখ͘͞ਅࣅΔ ΞϓϦΛଟग़͍ͯͯ͠ɺ৽نࣄۀ։ൃ͕׆ൃͳձࣾΛྫʹ • ڞ௨͢ΔػೳΛݟ͚ͭɺΞϓϦͰϞδϡʔϧΓग़͠ • ϞδϡʔϧΛผϓϩδΣΫτͰΓग़͠ • ύοέʔδཧπʔϧʹࡌͤΔ • SDKͱͯࣾ͠
·ͱΊ
·ͱΊ • ࣍ੈSDK։ൃνʔϜɺԣஅͯ͠ࣄۀͷߩݙΛࢦ͍ͯ͠Δ • SDKઓུʹ͍ͭͯɺଟࣄۀల։͍ͯ͠Ε໌͔Βݕ౼ͯ͠ΈΔՁ͋Γ
͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ