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.5k
빠르게 훑어보는 리디페이 백엔드 개발기
ridi
2
4.9k
Next.js는 정말 zero config였다.
ridi
0
2k
3일 걸릴 것 같던 구매목록 다운로드는 왜 3주가 걸렸을까?
ridi
0
390
원격으로 한 달 일해보니
ridi
0
1.4k
리디북스 앱에 S Pen Remote 연동하기
ridi
2
2.6k
UI 라이브러리 개발기
ridi
1
2.5k
테스트 환경 개선하기
ridi
8
3.3k
Other Decks in Technology
See All in Technology
生成AI × 旅行 LLMを活用した旅行プラン生成・チャットボット
kominet_ava
0
160
シフトライトなテスト活動を適切に行うことで、無理な開発をせず、過剰にテストせず、顧客をビックリさせないプロダクトを作り上げているお話 #RSGT2025 / Shift Right
nihonbuson
3
2.2k
デジタルアイデンティティ技術 認可・ID連携・認証 応用 / 20250114-OIDF-J-EduWG-TechSWG
oidfj
2
690
iPadOS18でフローティングタブバーを解除してみた
sansantech
PRO
1
150
Azureの開発で辛いところ
re3turn
0
240
DMMブックスへのTipKit導入
ttyi2
1
110
機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
moepy_stats
5
1.3k
【NGK2025S】動物園(PINTO_model_zoo)に遊びに行こう
kazuhitotakahashi
0
240
深層学習と3Dキャプチャ・3Dモデル生成(土木学会応用力学委員会 応用数理・AIセミナー)
pfn
PRO
0
460
comilioとCloudflare、そして未来へと向けて
oliver_diary
6
450
AWS re:Invent 2024 recap in 20min / JAWSUG 千葉 2025.1.14
shimy
1
100
Cloudflareで実現する AIエージェント ワークフロー基盤
kmd09
0
290
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
500
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
A designer walks into a library…
pauljervisheath
205
24k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Designing for humans not robots
tammielis
250
25k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
360
Docker and Python
trallard
43
3.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
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