This awaited update of the “Android for iOS” book includes new chapters, updated code samples and lots of new content! Updated for Android Studio 3.0.1 and Kotlin 1.2.
“I read the book and it’s awesome! Learned many things I didn’t know about, enjoyed the excellent structure and the many references leading to more in-depth info.
If you’re an iOS developer interested in Android / Kotlin dev, it’s a must read.”
Android and iOS have a lot in common, as do Kotlin and Swift, but they have quite big differences in approach, style and philosophy. This is a book + code bundle, including a comprehensive introduction to the Android ecosystem for iOS developers. DRM-free, in PDF, EPUB, MOBI (Kindle) and self-contained HTML formats! Read it on any device, without restrictions.
The bundled source code includes 60 Kotlin 1.2 projects ready to be opened, executed and extended with Android Studio 3.0.1, including a small introduction to Kotlin!
Each chapter includes an exclusive “TL;DR” table with API comparisons between Android and iOS, in both Swift and Kotlin!
Table of Contents
- Toolchain: Introduction to Kotlin; Comparison of Kotlin with Objective-C and Swift; Migrating Java projects to Kotlin; Zygote; Android Studio; Gradle; AVD and SDK Managers.
- Debugging: Breakpoints; logcat; pidcat; NSLogger; Stetho.
- User Interface: UI Guidelines; Support Library; Activities; Intents; Fragments; Layouts.
- Graphics: Coordinate system; Drawing; Animations; Persistence; Gestures; PaintCode.
- Networking: Parsing JSON and XML; Native HTTP libraries; RecyclerView; Retrofit; Web views; Embedded web servers; Zeroconf.
- Storage: Downloads; Files; Preferences; SQLite; OrmLite; Realm; Room.
- Sensors: Querying the device; Accelerometer; Compass; GPS; Google Services.
- Audio, Image and Video: Taking Pictures; Recording Video; Picking images locally; Recording and playing audio; Playing music; Speech synthesizer.
- Architecture: MVVM with Bindings; Dagger; RxAndroid.
- Testing: Defensive programming; Monkey; Local unit testing; Instrumented testing; Code coverage.
- Multithreading: how to avoid blocking the main thread; Runnables and Threads; ThreadPoolExecutor; AsyncTask; Handler and HandlerThread; Service; IntentService; JobService; JobIntentService.
- NDK: Creating a cross-platform application sharing C++ code with an iOS project.