Sharing Code Between iOS and Android Apps
summary
Company shares native business logic across Android and iOS in more than 10 apps used by over 7 million users, using three concrete approaches: C++ with CHENNEY-generated bridges for OpenGL maps and heavy computation (static libs, JNI, breakpoints in native debuggers), j2objc (Java → Objective‑C) to reuse Java cores like Game of Life with jUnit tests and careful weak annotations, and experimental Kotlin/Native to compile Kotlin to frameworks; each method lists exact build steps, tooling limits, and runtime tradeoffs (call overhead, debug ergonomics, library support).
AI-written summary · about
chapters (11)
- 0:00Start
- 1:29About Us
- 4:15C++ on iOS
- 6:20Djinni: Interface Definition Language
- 6:44Djinni: Setup-Getting Started
- 10:12Djinni: Workflow (5/7) - Create C++ file
- 10:50C++: Advantages / Disadvantages
- 17:0312Objc: Setup - Build Rule
- 23:49Kotlin/Native: What is it?
- 28:46Kotlin/Native: Advantages / Disadvantages
- 30:08Why do we bother with code sharing?
related talks
41mSharing and Separation — Design Guidelines for Compose Multiplatform Production Adoption
47mReact Native code reuse: Architecture that works
30mCross-platform Collaboration Patterns
35mBridging the Gap: How to use React Native in existing large native code bases
01h 00mMobile App Architecture: How to Conquer the Giant!
47mCross-Platform Redux and SwiftUI / Jetpack Compose
26mKotlin Multiplatform in an MVVM World
48mEffective Multiplatform Kotlin Development
