Impact of framework choice on your application: A reverse engineering perspective
summary
Reverse engineering compares frameworks by doing real edits: decompiled Kotlin APKs with JEX and uses Frida hooking to change the increment method so a button adds +100 coffees instead of +1, and R8 proves tricky because method inlining and short names hide targets. React Native edits the JS bundle or Hermes bytecode via APKTool + HBC tool, while Flutter requires instrumenting the engine with ReFlutter and extracting offsets (IDA) before hooking. All changes run successfully but some tools need frequent maintenance.
AI-written summary · about
chapters (10)
- 0:00Introduction and setup
- 1:53APK structure and modification methods
- 4:00Basic Android XML implementation
- 7:11R8 framework modifications
- 10:04Jetpack Compose framework
- 13:35React Native JavaScript version
- 16:49React Native Hermes bytecode
- 21:12Flutter framework overview
- 28:59Flutter reverse engineering challenges
- 30:45Security implications and takeaways
related talks
13mUsing multiplatform frameworks to target Android in emerging markets.
39mCross-platform tools in the real world
32mWhy Invent a Framework and How to Live with It?
51mRe-Architecting Applications (Without a Rewrite!)
23mThe State of One Codebase For All The Platforms
40mGrowing Pains: Scaling and Re-architecting Apps Under Fire
17mX-Droid: A Quick and Easy Android Prototyping Framework with a Single-App Illusion
49mFrom Frameworks to Superframeworks
