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
480
Android EPUB 로딩 개선
RIDI
August 03, 2018
Tweet
Share
More Decks by RIDI
See All by RIDI
원격 근무 팀 운영 경험 공유
ridi
0
2.1k
SVG Icon Design Guide
ridi
2
3.4k
빠르게 훑어보는 리디페이 백엔드 개발기
ridi
2
4.9k
Next.js는 정말 zero config였다.
ridi
0
2k
3일 걸릴 것 같던 구매목록 다운로드는 왜 3주가 걸렸을까?
ridi
0
380
원격으로 한 달 일해보니
ridi
0
1.4k
리디북스 앱에 S Pen Remote 연동하기
ridi
2
2.6k
UI 라이브러리 개발기
ridi
1
2.4k
테스트 환경 개선하기
ridi
8
3.3k
Other Decks in Technology
See All in Technology
福岡新卒エンジニアの会
teba_eleven
1
180
Windows Autopilot Deployment by OSD Guy
tamaiyutaro
0
300
組み込みLinuxの時系列
puhitaku
4
990
コンテナのトラブルシューティング目線から AWS SAW についてしゃべってみる
kazzpapa3
1
120
いろんなものと両立する Kaggleの向き合い方
go5paopao
2
970
エンジニアが一生困らない ドキュメント作成の基本
naohiro_nakata
2
140
2024年グライダー曲技世界選手権参加報告/2024 WGAC report
jscseminar
0
190
家具家電付アパートの冷蔵庫をIoT化してみた!
scbc1167
0
140
"君は見ているが観察していない"で考えるインシデントマネジメント
grimoh
4
1k
地理情報データをデータベースに格納しよう~ GPUを活用した爆速データベース PG-Stromの紹介 ~
sakaik
1
100
Forget efficiency – Become more productive without the stress
ufried
0
240
Mini Tokyo 3D × PLATEAU - 公共交通デジタルツインにリアルな風景を
nagix
1
230
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
46
2.1k
Into the Great Unknown - MozCon
thekraken
32
1.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
505
140k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Writing Fast Ruby
sferik
627
61k
BBQ
matthewcrist
85
9.3k
It's Worth the Effort
3n
183
27k
Documentation Writing (for coders)
carmenintech
65
4.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
KATA
mclloyd
29
14k
How STYLIGHT went responsive
nonsquared
95
5.2k
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