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
アプリリリースまでのつらみあれこれ
Search
nitaking
February 21, 2019
Technology
690
0
Share
アプリリリースまでのつらみあれこれ
アプリリリースまでのつらみあれこれ
【第2回】ReactNativeにゆかりのあるスタートアップが集う会
https://r-n.connpass.com/event/117895/
nitaking
February 21, 2019
More Decks by nitaking
See All by nitaking
人は30分でLT資料を作って発表できるのか
nitaking
0
270
React Native ことはじめ
nitaking
0
270
2021-06-24 最近のビルドツール調べてみた
nitaking
0
150
Fishのススメ
nitaking
0
85
Blitz.jsの紹介
nitaking
1
1.1k
Expo WEB × Next.js は実用できるのか?
nitaking
3
1.1k
react-hooks-loggerつくった話
nitaking
0
530
あの震えるインタラクションを実装したい
nitaking
1
1.5k
React非同期ライブラリを知る
nitaking
0
180
Other Decks in Technology
See All in Technology
会社紹介資料 / Sansan Company Profile
sansan33
PRO
16
410k
Databricks Lakehouse Federationで 運用負荷ゼロのデータ連携
nek0128
0
110
OPENLOGI Company Profile
hr01
0
83k
【AWS】CloudTrail LakeとCloudWatch Logs Insightsの使い分け方針
tsurunosd
0
130
AIエージェント勉強会第3回 エージェンティックAIの時代がやってきた
ymiya55
0
220
Sansanの認証基盤を支えるアーキテクチャとその振り返り
sansantech
PRO
1
150
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
77k
ブラックボックス化したMLシステムのVertex AI移行 / mlops_community_62
visional_engineering_and_design
1
260
Cortex Code君、今日から内製化支援担当ね。
coco_se
0
170
ハーネスエンジニアリング×AI適応開発
aictokamiya
3
1.3k
Databricks Lakebaseを用いたAIエージェント連携
daiki_akimoto_nttd
0
120
40代からのアウトプット ― 経験は価値ある学びに変わる / 20260404 Naoki Takahashi
shift_evolve
PRO
4
750
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
HDC tutorial
michielstock
1
600
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Test your architecture with Archunit
thirion
1
2.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
950
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
320
Become a Pro
speakerdeck
PRO
31
5.9k
30 Presentation Tips
portentint
PRO
1
270
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Transcript
ΞϓϦϦϦʔε·Ͱͷ ͭΒΈ͋Ε͜Ε @nitaking_
About Satoshi Nitawaki • ॴଐ • ΤΞʔΫϩʔθοτ • ΞϓϦϝΠϯ /
ϑϩϯτ / αʔό • ܦྺ • SIer / ࣾSE • ΞΧϯτ • Twitter: @nitaking_ • Github: @nitaking
ΤΞʔΫϩʔθοτ • αʔϏε • ϓϩͷελΠϦετ͕͋ͳͨͷͨΊʹίʔσΟωʔτ • ύʔιφϧελΠϦϯά • ঁੑ͚आΓ์ͷϑΝογϣϯϨϯλϧαʔϏε
React Native࠾༻ʹࢸΔ·Ͱ • طଘͷiOSΞϓϦʢSwitfʣΛϦϓϨʔε • iOSΤϯδχΞෆࡏ • ϝϯςφϯε͞Εͳ͍ΞϓϦ • ߋ৽͞Εଓ͚ΔWEBΞϓϦ
• ಡΊͳ͍Swiftͷίʔυ • Androidཉ͍͠
ϦϓϨʔεͷํ • ϝΠϯػೳReact NativeͰ࣮ • ҎԼWebViewͰճආ • ϦϦʔεʹؒʹ߹Θͳ͍༏ઌΊͳػೳ • ܾࡁपΓը໘
• tokenೝূ͕͠ΜͲͦ͏
ओʹਏ͔ͬͨͱ͜ Android WebView
Android • WebViewͷFileUploadͰ͖ͳ͍݅ • FlatList × Image => ϨϯμϦϯά͓͔͍͠
WebViewͷFileUploadͰ͖ͳ͍݅ • ϦϦʔε1िؒલʹൃ֮ • RN v0.55.4Ͱൃੜ • v0.57.0Ͱʢͬͱʣղফ͞ΕͨΒ͍͠ ͜ͷλΠϛϯάͰ RNΞοϓάϨʔυʂʁ
WebViewͷFileUploadͰ͖ͳ͍݅ • ༗ࢤʹॿ͚ΒΕͨʂʂʂ • Android<WebView>Λ͜ΕͱೖΕସ͑ͯ༻͢Δ • ࠓݩؾʹಈ͍͍ͯΔ • RNόʔδϣϯΞοϓ͢Δ·Ͱ͓ੈʹ
FlatList × Image • ͳʹ͕ى͖͔ͨ • ϨϯμϦϯά͕·Β • දࣔΧΫ͍ͭͯΔײ •
දࣔ͞Εͳ͍Component • iOSͰى͖ͳ͔ͬͨ *NBHF
FlatList × Image • ղܾࡦ • props: removeClippedSubviews This may
improve scroll performance for large lists.
FlatList × Image removeClippedSubviews: false removeClippedSubviews: true • iOSϝϞϦϦʔΫ͕͏·͍͕ AndroidϝϞϦϦʔΫ͞Εͯͳ͍ʁ
iOS༏लʁ
WebView • webίϯςϯπΛදࣔ • ࣗಈϩάΠϯ • AuthޙͷtokeΛCookieʹηοτͯ͠ೝূ • ͭ·Γ •
RNͷWebViewʹCookieΛηοτͯ͠ೝূʁ
WebView • ͬͨ͜ͱ • WebViewͷதʹCookieใηοτʁ • <WebView> injectJavaScriptʹsetCookieͷॲཧΛ ߦ͏JSΛ࣮ͯ͠ߦͰ͖ͦ͏ͳײ͕͋͡Δ ࣦഊ
WebView • ߦ͖ண͍ͨ͑ • react-native-cookies(star 600~) • ͔͋ͨϝδϟʔͬΆ͍react-native-cookieඍົ • iOSͱAndroidͰؔ༩͑Δύϥϝʔλผʑ
• iOSCookieೝূOKͰAndroidNGɺ ͱ͍͏͜ͱ͕ൃੜ͍ͯͨ͠
WebView AndroidͱiOSͰ༻్ಉ͡ͳͷʹΠϯλϑΣʔεҧ͏ →݁ߏϋϚͬͨ
͞Βʹ Apple৹ࠪ
Apple৹ࠪ • Ұճɿϕʔλ൛͛ͨ • ௨աͨ͠ • ೋճɿ҆৺ͯ͠͏Ұճ͛ͨ • मਖ਼ͯ͠ͳ͍ͱ͜ΖͷࢦఠͰ৹ࠪམͪͨɻɻɻ
ͳͥʁ
Apple৹ࠪ • ཧ༝ɿ • ձһొSafariͷwebϖʔδʹඈ͍ͯͨ͠ ʢAppϦϯΫ -> Safariϖʔδʣ • ձһొΞϓϦͰ݁ͤͯ͞΄͍͠ͱͷ͜ͱ
• UXͷ؍͔ΒΞϓϦ͕͍͍Αͱͷ͜ͱ ཧ༝Θ͔ͬͨɻ ͰͳΜͰҰճ৹ࠪ௨ͬͨɾɾɾʁ
Apple৹ࠪ • AppWebViewʹΓସ͑ • iOS͢Μ͍͝ΧΫΧΫ͢Δ • Safariͩͱ͘͢͝αΫαΫಈ͍ͯΔ • Android͍͢͝αΫαΫಈ͘ɾɾɾ εΫϩʔϧ͢ΒͰ͖ͳ͍݅
WebViewΧΫΧΫ RN WebView Safari
WebViewΧΫΧΫ • ݪҼʢݸਓతݟղʣ • RNͷWebViewύϑΥʔϚϯε͕ѱ͍ • ձһొwebϖʔδͷύϑΥʔϚϯε͕ѱ͍ • ্هͷʮѱ͍×ѱ͍ʯʹΑͬͯҾ͖ى͜͞Ε͍ͯΔ •
WKWebViewͱUIWebViewͷҧ͍ʁʁ • iOS8ͷSafariͰಉ͡ݱΛ࠶ݱ • iOS8 SafariʹRN WebView
WebViewΧΫΧΫ • ରॲ • ෳͷཁҼ͕͋Γͦ͏ͰݪҼٻΓ্͛ɻ • ΞϓϦ༻ձһొϖʔδΛ༻ҙͯ͠Γӽ͑Δ ͠ ؔ࿈͢ΔݟΛ͓࣋ͪͷํ͕͍Ε ڭ͍͑ͯͩ͘͞ʂʂ
·ͱΊ • AndroidϨϯμϦϯά͕ऑ͍ • AndroidWebView͕ڧ͍ • iOSWebViewͷύϑΥʔϚϯε͕ѱ͍ ʢԿ͔͠Βରॲ๏ଘࡏͦ͠͏ʣ • Apple৹ࠪݸਓ͕ࠩ͋Δɻ
• όʔδϣϯΞοϓ։ൃத͜·Ίʹ͍ͬͯͨ΄͏ ͕݈શ͔
͋Γ͕ͱ͏͍͟͝·ͨ͠