Interception
summary
Demonstrates concrete interception techniques: adding OKHttp interceptors to an HTTP client (pass-through, logging, modifying headers, short-circuit, caching) and shows a JSON S3 endpoint where the cache returns the saved response on the second call and a network interceptor reveals wire headers (User‑Agent, gzip) while app interceptors don’t. Shows reactive Kotlin flows (onEach, map) vs eager collections, Kotlin’s by-delegate to log/modify calls, and wrapping objects with Java dynamic proxies to prefix dates or intercept method invocations — all live-coded and working.
AI-written summary · about
chapters (17)
- 0:00Welcome and introduction
- 1:09What is interception
- 3:52Interceptor categories
- 5:59OKHTTP interceptors demo
- 9:29Modifying interceptors
- 10:51Short circuit interceptors
- 11:33Caching interceptors
- 13:17Benefits of interceptor pattern
- 15:21Kotlin flows as interceptors
- 18:34Kotlin collections vs flows
- 20:18Interfaces enable interception
- 23:04Kotlin delegates as interceptors
- 26:31Delegate interceptor examples
- 27:55Why use interception
- 29:21Java reflection dynamic proxies
- 35:40When to use dynamic proxies
- 36:03Closing and Q&A
related talks
28mCaught in the middle!
33mShielding Your Android App from Attackers
57mD2T2 - Mallet: Towards a Generic Intercepting Proxy
43mAttacking Android Applications
47mAttacking Android Applications
44m Meticulously Modern Mobile Manipulations
40mDon’t let attackers exploit your app via Intents
45mI just hacked your app!
