Slide 1

Slide 1 text

STORES 株式会社 あなたの知らないAndroid Jetpackの世界 DroidKaigi.collect { #7@Tokyo } 2023.12.01 @tomorrowkey

Slide 2

Slide 2 text

自己紹介

Slide 3

Slide 3 text

自己紹介 ● 山下智樹 / @tomorrowkey ● STORES株式会社 - STORES ブランドアプリ ● Android エンジニア (14年生) 3

Slide 4

Slide 4 text

Android Jetpackってなに

Slide 5

Slide 5 text

Android Jetpackってなに ベストプラクティスに従い、ボイラープレートを減らし、Androidの機種依存にも 一貫した挙動を実現する、これらによって、アプリエンジニアはアプリ開発に集中 できる。 5 Jetpack is a suite of libraries to help developers follow best practices, reduce boilerplate code, and write code that works consistently across Android versions and devices so that developers can focus on the code they care about. https://developer.android.com/jetpack “ ”

Slide 6

Slide 6 text

Quiz Android Jetpackにはいくつライブラリがあるでしょうか (2023-11-27時点で https://developer.android.com/jetpack/androidx/explorer?case=all にリストされているライブラリの数) A. 84 B. 114 C. 530,000 6

Slide 7

Slide 7 text

Answer Android Jetpackにはいくつライブラリがあるでしょうか (2023-11-27時点で https://developer.android.com/jetpack/androidx/explorer?case=all にリストされているライブラリの数) A. 84 B. 114 C. 530,000 7

Slide 8

Slide 8 text

そこで きっと知らないライブラリもあるはず 8

Slide 9

Slide 9 text

STORES 株式会社 あなたの知らないAndroid Jetpackの世界 ~ Jetpack JavaScript Engine~ DroidKaigi.collect { #7@Tokyo } 2023.12.01 @tomorrowkey

Slide 10

Slide 10 text

Jetpack JavaScript Engineってなに Jetpack JavaScript Engineってなに 10

Slide 11

Slide 11 text

Jetpack JavaScript Engineってなに 11 Jetpack library JavaScriptEngine provides a way for an application to evaluate JavaScript code without creating a WebView instance. https://developer.android.com/develop/ui/views/layout/webapps/jsengine “ ”

Slide 12

Slide 12 text

Jetpack JavaScript Engineってなに わかる 😊 12

Slide 13

Slide 13 text

使い方 13

Slide 14

Slide 14 text

Jetpack JavaScript Engineってなに わかった 😊 14

Slide 15

Slide 15 text

なにがうれしいの? なにがうれしいの?🫠 15

Slide 16

Slide 16 text

なにがうれしいの? わからない…🫠 16

Slide 17

Slide 17 text

なにがうれしいの? 17 Sometimes you might need to run JavaScript in your app without having to display any web content; for example, when sharing business logic across web and mobile apps. https://developer.chrome.com/blog/whats-new-in-web-on-android-io2023/#jetpack-javascript-engine “ ”

Slide 18

Slide 18 text

なにがうれしいの? ほんまか?🤔 18

Slide 19

Slide 19 text

なにがうれしいの? 19 https://www.reddit.com/r/androiddev/comments/15kkhna/best_way_to_run_js_inside_android_app_in_2023/

Slide 20

Slide 20 text

なにがうれしいの? 20 https://www.reddit.com/r/androiddev/comments/15kkhna/best_way_to_run_js_inside_android_app_in_2023/

Slide 21

Slide 21 text

なにがうれしいの? 21 https://www.reddit.com/r/androiddev/comments/15kkhna/best_way_to_run_js_inside_android_app_in_2023/

Slide 22

Slide 22 text

なにがうれしいの? 22 https://www.reddit.com/r/androiddev/comments/15kkhna/best_way_to_run_js_inside_android_app_in_2023/

Slide 23

Slide 23 text

なにがうれしいの? わからない…🫠 23

Slide 24

Slide 24 text

わからないけどニーズはあるみたい 古来よりAndroid向けJavaScriptランタイムはつくられてきた ● LiquidCore ● Duktape ● QuickJS ● Hermes 24

Slide 25

Slide 25 text

夢の話をしましょう 夢の話をしましょう 🤩 25

Slide 26

Slide 26 text

夢の話をしましょう 26 This library uses the V8, Chrome’s JavaScript engine, and lets your application evaluate JavaScript or WebAssembly code without creating a WebView instance. https://developer.chrome.com/blog/whats-new-in-web-on-android-io2023/#jetpack-javascript-engine “ ”

Slide 27

Slide 27 text

夢の話をしましょう おもしろそうやん 27

Slide 28

Slide 28 text

夢の話をしましょう 28

Slide 29

Slide 29 text

夢 Java系以外の言語を実行できる(かもしれない) ● Go ● Ruby ● R ● などなど 組み込みが難しいライブラリを使えるようになる(かもしれない) ● ImageMagick ● ffmpeg ● などなど 29

Slide 30

Slide 30 text

おわり おわり 30