Slide 1

Slide 1 text

CROSS PLATFORM SHENANIGANS Part II: Android http://jnjosh.com @jnjosh

Slide 2

Slide 2 text

Apple Nerd

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

So I needed to build a Cross-Platform Game…

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

!

Slide 18

Slide 18 text

So we did it…

Slide 19

Slide 19 text

Core Renderer iOS Android

Slide 20

Slide 20 text

iOS Android Swift! Kotlin! C++ 11! Core Renderer

Slide 21

Slide 21 text

Objective-C++ More C++ JNI Maybe Java iOS Android Swift! Kotlin! C++ 11! Core Renderer

Slide 22

Slide 22 text

Android Core Renderer

Slide 23

Slide 23 text

Android Core Renderer Android Studio CMake

Slide 24

Slide 24 text

Android Core Renderer Android Studio CMake JNI

Slide 25

Slide 25 text

Android Core Renderer Android Studio CMake Gradle JNI

Slide 26

Slide 26 text

DEMO

Slide 27

Slide 27 text

So what did we learn?

Slide 28

Slide 28 text

Build what you need

Slide 29

Slide 29 text

Learn and use the idioms of each language; use them.

Slide 30

Slide 30 text

Define strict protocols for communication

Slide 31

Slide 31 text

Build things as modular as possible.

Slide 32

Slide 32 text

Create common conceptual patterns

Slide 33

Slide 33 text

THANKS! http://jnjosh.com @jnjosh