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
UaaL×Androidアプリのメモリ計測 — Memory Profilerの先へ
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ryosuke Shimizu (RIO)
May 15, 2026
Programming
240
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
UaaL×Androidアプリのメモリ計測 — Memory Profilerの先へ
Ryosuke Shimizu (RIO)
May 15, 2026
More Decks by Ryosuke Shimizu (RIO)
See All by Ryosuke Shimizu (RIO)
KMP × Kotlin 2.3 - How Android Got Slower While iOS Builds Improved by 47%
rio432
0
510
KMP✖️Unity UaaL で月1,200件の自動PR -マルチリポ開発の課題と解決
rio432
0
68
Google Map with KMP
rio432
0
330
CameraXが変えるモバイル検索: 最新動向と実用的アプローチ
rio432
0
30
Kotlin Multiplatform でのリソース共有について
rio432
0
56
Other Decks in Programming
See All in Programming
Inside Stream API
skrb
1
720
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
560
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
350
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
540
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
21
6.7k
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
240
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.3k
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
270
AIで効率化できた業務・日常
ochtum
0
140
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
6k
TAKTでAI駆動開発の品質を設計する
j5ik2o
7
1.3k
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.6k
Featured
See All Featured
Faster Mobile Websites
deanohume
310
31k
Building Applications with DynamoDB
mza
96
7.1k
A Soul's Torment
seathinner
6
2.9k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
180
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
250
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Accessibility Awareness
sabderemane
1
140
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Building the Perfect Custom Keyboard
takai
2
800
Abbi's Birthday
coloredviolet
2
8.1k
Transcript
RIO (Ryosuke Shimizu) UaaL×Androidアプリ のメモリ計測 Memory Profilerの先へ
Self Introduction My name is RIO @rioX432 ・Disney ・Chiikawa ・HoloLive
・Game Streaming ・Comfy UI etc RIO / Mobile App Engineer Avvy Avatar Live Streaming App
Avvyでのアバター描画の技術 Unity:一番下のレイヤーでアバターの レンダリングのみを担当 NativeUI:その上にオーバーレイ グレー:Unityのアバターの描画領域 黄色:Nativeのオーバーレイ Face Tracking iOSはARKit、AndroidはMediaPipe UaaLでUnityのアバター&背景を描画
AnotherBall Tech Blogより引⽤
5 Repository Structure Android / iOS / KMP / Unity
/ Unity SPM
Unity as a Library (UaaL) とは ネイティブアプリにUnityの描画エンジンを埋め込む - Unityのレンダリングエンジンをライブラリとしてネイティブアプリに組み込む技術 -
UI はネイティブ (Compose / SwiftUI)、3D/AR描画だけUnityが担当 - Unityランタイムがアプリと同一プロセスで動く → メモリも共有 採用アプリ例 : - Mirrativ — 3Dアバター配信 - REALITY — バーチャル配信 - ZOZO — 3D仮想試着 - NAVITIME — ARナビ 公式対応: Android (Kotlin/Java) / iOS (Swift/ObjC) Flutter / React Native もコミュニティパッケージ経由で利用可能 https://github.com/juicycleff/flutter-unity-view-widget https://pub.dev/packages/flutter_embed_unity https://github.com/azesmway/react-native-unity
アバター表⽰時のメモリ使⽤量 Memory Profilerでは中⾝が⾒えない
Live Telemetryでは全体の1.2GBと大まかな分類は見える。しかし Graphics 430MB / Others 470MB の中身は分解できない
+826MBの正体 GPU 44% / Unity CPU 43% — Java Heapはほぼゼロ
- GL mtrack (GPU textures) と Unknown (unclassified by OS) が二大要因 - Java Heap の増加はわずか +2MB
dumpsys meminfo で全体を⾒る adb shell dumpsys meminfo <package> dumpsys meminfoならGraphics/Othersの中身を
GL mtrack・EGL mtrack・Unknownに分解できる
まとめ 1. adb shell dumpsys meminfo <package> — アプリ全体のメモリ構造を把握 2.
adb shell dumpsys gpu — GPUメモリの実使⽤量を確認 3. Unity Profiler / SRDebugger — Unity内部のCPU側メモリ配分を確認 Memory Profilerだけでは「Graphics 430MB」の中⾝が⾒えない NDKやネイティブライブラリを含むアプリ全般に応⽤可能 3つの計測⼿段を使い分ける
「Avvyチーム、⾯⽩そうだな」と 思ったそこのあなたに! Avvyはまだ⾛り始めたばかりのサービスです。 今だからこそ挑戦できること、作っていける価値が 本当にたくさんあります。 あなたのご応募をお待ちしております。 おわりに 募集中のポジションの確認、応募は こちらのリンクから! https://anotherball.notion.site/open-positions