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
Android EPUB 로딩 개선
Search
RIDI
August 03, 2018
Technology
3
490
Android EPUB 로딩 개선
RIDI
August 03, 2018
Tweet
Share
More Decks by RIDI
See All by RIDI
원격 근무 팀 운영 경험 공유
ridi
0
2.2k
SVG Icon Design Guide
ridi
2
3.8k
빠르게 훑어보는 리디페이 백엔드 개발기
ridi
2
5k
Next.js는 정말 zero config였다.
ridi
0
2.1k
3일 걸릴 것 같던 구매목록 다운로드는 왜 3주가 걸렸을까?
ridi
0
450
원격으로 한 달 일해보니
ridi
0
1.4k
리디북스 앱에 S Pen Remote 연동하기
ridi
2
2.7k
UI 라이브러리 개발기
ridi
1
2.6k
테스트 환경 개선하기
ridi
8
3.5k
Other Decks in Technology
See All in Technology
OPENLOGI Company Profile for engineer
hr01
1
33k
解析の定理証明実践@Lean 4
dec9ue
1
210
ドメイン特化なCLIPモデルとデータセットの紹介
tattaka
2
540
Core Audio tapを使ったリアルタイム音声処理のお話
yuta0306
0
160
Github Copilot エージェントモードで試してみた
ochtum
0
140
KubeCon + CloudNativeCon Japan 2025 Recap Opening & Choose Your Own Adventureシリーズまとめ
mmmatsuda
0
240
LangSmith×Webhook連携で実現するプロンプトドリブンCI/CD
sergicalsix
1
170
タイミーのデータモデリング事例と今後のチャレンジ
ttccddtoki
6
2.1k
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
310
生まれ変わった AWS Security Hub (Preview) を紹介 #reInforce_osaka / reInforce New Security Hub
masahirokawahara
0
380
Delegating the chores of authenticating users to Keycloak
ahus1
0
130
SmartNewsにおける 1000+ノード規模 K8s基盤 でのコスト最適化 – Spot・Gravitonの大規模導入への挑戦
vsanna2
0
100
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
730
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Into the Great Unknown - MozCon
thekraken
39
1.9k
Music & Morning Musume
bryan
46
6.6k
How to Ace a Technical Interview
jacobian
277
23k
It's Worth the Effort
3n
185
28k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Designing Experiences People Love
moore
142
24k
Raft: Consensus for Rubyists
vanstee
140
7k
Rails Girls Zürich Keynote
gr2m
94
14k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
240
Faster Mobile Websites
deanohume
307
31k
Transcript
Android EPUB ۽٬ ѐࢶ ࠭য ষੋ
None
ࢲীࢲ ଼ਸ ҳݒ জীࢲ ۽٘ ੍ח
ࢲীࢲ ଼ਸ ҳݒ জীࢲ ۽٘ ੍ח EPUBী Ѧܽ DRMਸ ೧ઁೞҊ
ਬബೞ ঋ ੌ ա ഛੋೞҊ ୷ ಽҊ ஶబஎ Ҋ द DRM ਊೞҊ ਗࠄ Ҋ …
EPUB ۽٬ җ 1. DRM Ѧ۰ח EPUB ۽٘
EPUB ۽٬ җ 2. EPUBী Ѧ۰ח DRM ೧ઁ
EPUB ۽٬ җ ≈
EPUB ۽٬ җ 3. ୷೧ઁ ߂ ਗࠄ EPUB ઁѢ
EPUB ۽٬ җ 4. ஶబஎ ੌী DRM ਊ
Ӓؘ۠..
DRM ೧ઁ ػ EPUBੌ ੌदਵ۽ ઓ EPUB ୷ ೧ઁ, ঐഐച
স ب ъઁ ઙܐ द ਗࠄੌ ֢
ਗࠄ ੌ Ӓ۽ ࠁৈҊ DRM Ѧܻ ঋ EPUB ࠄޙ
HTML ੌ ӝఋ..
যځೠ ࢚ടীࢲب ঐഐച غ ঋ ੌ ࠁৈઉࢲח উػ
рী ੌ ֢غחѱ ޙઁۄݶ? ਸ ೞ݈!
DRM ೧ઁ ୷ ೧ઁ బஎ DRM ਊ
1. EPUB ੌਸ ೞ ঋҊ ߄۽ ঐഐചೞ ࢎন ӝӝীࢲ ࠛоמೣ
(ࢲ ӝળ о EPUB : 493MB)
=
2. ܴਸ о ࠙ೡ ୷ੌਸ ࢎਊೞ Zip Headerܳ ా೧
ࣽࢲ ਬ୶ оמ 1. DRM ೧ઁೠ EPUB ੌਸ ೞ ঋҊ ߄۽ ঐഐചೞ
1/n 1/n 1/n 1/n j EPUB (n byte)
Sequence InputStream j Input Stream Input Stream Input Stream Input
Stream
3. Zip ੌ ইצ Ӓր ੌਸ ࢎਊೞ ੌ ࢤࢿदрਸ ా೧
ࣽࢲ ਬ୶ оמ 2. ܴਸ о ࠙ೡ ୷ੌਸ ࢎਊೞ 1. DRM ೧ઁೠ EPUB ੌਸ ೞ ঋҊ ߄۽ ঐഐചೞ
1 2 3 … 1 3 2 …
4. Random Access Fileਸ ࢎਊೞ ࢿҕ 3. Zip ੌ ইצ
Ӓր ੌਸ ࢎਊೞ 2. ܴਸ о ࠙ೡ ୷ੌਸ ࢎਊೞ 1. DRM ೧ઁೠ EPUB ੌਸ ೞ ঋҊ ߄۽ ঐഐചೞ
ਵݶ જওѷ݅..
ঐഐച ೡ ੌ ࢶఖ ӝળ ӏधਸ ాೠ DRMਊ
opf ݾ۾ী ח ੌٜਸ ঐഐച
opf ݾ۾ী ח ੌٜਸ ঐഐച ୷ਸ ݢ ಽҊ ঐഐച
೮ӝ ٸޙী opf ࢎਊ оמ ӏधਵ۽ ഛܳ ೧ࢲ ঐഐച e.g. *.html, *.xhtml
୷ਸ ݢ ಽҊ ঐഐച ೮ӝ ٸޙী opf ࢎਊ оמ
-> ਃೠ ੌਸ ই ݢ ୷ਸ ಽ InputStream ZipArchiveInputStream ZipArchiveEntry
ਊ EPUB ܻ opfܳ ాೠ Ѩࢎ ޙઁ
୷ ಽ ٸ݃ opfীࢲ ୶ೠ ݾ۾җ ࠺Ү ݾ۾ ݽٚ ੌਸ
୷ ಽਵݶ աݠח ߄۽ ೯ೞ -> ࠺ ஶబஎ ੌ ݆ EPUB ਊ ఀ
None
୷ਸ ಽݶࢲ زदী ঐഐച Disk I/Oо যٝ
աݠח ߄۽ ୷೧ઁ ਃೠ ੌ݅ ࢶఖೞৈ ঐഐച
PAPER PRO ୭ୡ ۽٬दр 0 150 300 450 600 15MB
50MB 200MB 500MB ߸҃ ߸҃ റ दр (ୡ) 60%
ખ ؊ җਸ উೞѱ উೞҊ ࡅܰѱ!
য় Ѧ যڌѱ ೞ? য় Ѥ যڌѱೞ? য় Ѧ যڌѱ
೮?
Android 3ਘ PAPER 4ਘ PAPER PRO 5ਘ THE END
Q&A