Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Python on the move: The state of Mobile Python

Python on the move: The state of Mobile Python

Over the last 5 years, the "desktop/server" split that dominated the 80s, 90s and 2000s has been joined by a third player - mobile devices such as phones and tablets.

So, what is the story for running Python on these devices? Although there hasn't been much to say in the past, the good news is that over the last year, there's been some signficant changes in the landscape, and Python on Mobile is now teetering on the brink of being a genuine reality.

In this talk, Russell Keith-Magee will survey the current state of using Python on mobile devices, the work that is currently being done, areas where more work is requried, and the prospects for the future.

Russell Keith-Magee

August 02, 2015
Tweet

More Decks by Russell Keith-Magee

Other Decks in Programming

Transcript

  1. Python on the move The state of mobile Python Dr

    Russell Keith-Magee PyCon AU 2015
  2. Python on the move The state of mobile Python Dr

    Russell Keith-Magee PyCon AU 2015
  3. iOS Hardware: ARMv6, ARMv7, ARMv7s, ARM64 Testing on i386/x86-64 Simulator

    Clang toolchain Fat binaries Objective-C native libraries No dynamic linking Submission through App Store
  4. iOS Hardware: ARMv6, ARMv7, ARMv7s, ARM64 Testing on i386/x86-64 Simulator

    Clang toolchain Fat binaries Objective-C native libraries No dynamic linking Submission through App Store
  5. iOS Hardware: ARMv6, ARMv7, ARMv7s, ARM64 Testing on i386/x86-64 Simulator

    Clang toolchain Fat binaries Objective-C native libraries No dynamic linking Submission through App Store
  6. iOS Hardware: ARMv6, ARMv7, ARMv7s, ARM64 Testing on i386/x86-64 Simulator

    Clang toolchain Fat binaries Objective-C native libraries No dynamic linking Submission through App Store
  7. iOS Hardware: ARMv6, ARMv7, ARMv7s, ARM64 Testing on i386/x86-64 Simulator

    Clang toolchain Fat binaries Objective-C native libraries No dynamic linking Submission through App Store
  8. iOS Hardware: ARMv6, ARMv7, ARMv7s, ARM64 Testing on i386/x86-64 Simulator

    Clang toolchain Fat binaries Objective-C native libraries No dynamic linking Submission through App Store
  9. iOS Hardware: ARMv6, ARMv7, ARMv7s, ARM64 Testing on i386/x86-64 Simulator

    Clang toolchain Fat binaries Objective-C native libraries No dynamic linking Submission through App Store
  10. Android Hardware: ARM, ARM64, i386, MIPS Testing via device emulator

    Java toolchain Native code via JNI Single target binaries Submission through Google Play Store
  11. Android Hardware: ARM, ARM64, i386, MIPS Testing via device emulator

    Java toolchain Native code via JNI Single target binaries Submission through Google Play Store
  12. Android Hardware: ARM, ARM64, i386, MIPS Testing via device emulator

    Java toolchain Native code via JNI Single target binaries Submission through Google Play Store
  13. Android Hardware: ARM, ARM64, i386, MIPS Testing via device emulator

    Java toolchain Native code via JNI Single target binaries Submission through Google Play Store
  14. Android Hardware: ARM, ARM64, i386, MIPS Testing via device emulator

    Java toolchain Native code via JNI Single target binaries Submission through Google Play Store
  15. Android Hardware: ARM, ARM64, i386, MIPS Testing via device emulator

    Java toolchain Native code via JNI Single target binaries Submission through Google Play Store
  16. iOS Patch available for CPython 3.4.2 Python issue23670 On OS/X

    with XCode: cd iOS && make spits out Python.framework Fully passes test suite on Simulator many capabilities disabled 5 failing tests on ARM64 devices 3 failing tests on ARMv7/ARMv7S devices
  17. iOS Patch available for CPython 3.4.2 Python issue23670 On OS/X

    with XCode: cd iOS && make spits out Python.framework Fully passes test suite on Simulator many capabilities disabled 5 failing tests on ARM64 devices 3 failing tests on ARMv7/ARMv7S devices
  18. iOS Patch available for CPython 3.4.2 Python issue23670 On OS/X

    with XCode: cd iOS && make spits out Python.framework Fully passes test suite on Simulator many capabilities disabled 5 failing tests on ARM64 devices 3 failing tests on ARMv7/ARMv7S devices
  19. iOS Patch available for CPython 3.4.2 Python issue23670 On OS/X

    with XCode: cd iOS && make spits out Python.framework Fully passes test suite on Simulator many capabilities disabled 5 failing tests on ARM64 devices 3 failing tests on ARMv7/ARMv7S devices
  20. iOS Patch available for CPython 3.4.2 Python issue23670 On OS/X

    with XCode: cd iOS && make spits out Python.framework Fully passes test suite on Simulator many capabilities disabled 5 failing tests on ARM64 devices 9 failing tests on ARMv7/ARMv7S devices
  21. Android Patch available for CPython 3.4.2 Python issue23496 Not yet

    complete Kivy has a working 2.7.6 compile, so it can be done.
  22. Android - problems to solve Python issue22625 - cross-platform build

    support libffi CPython vs Java Why not Jython?
  23. Making an iOS project cookiecutter http://github.com/pybee/Python- iOS-template Download support tarball

    from http://github.com/Python-iOS-support Unpack tarball Compile and run
  24. Making an Android project cookiecutter http://github.com/pybee/Python- Android-template Download support tarball

    from http://github.com/Python-Android-support Unpack tarball Compile and run