appcelerator hyperloop: overview, architecture & demo
Post on 12-Apr-2017
115 Views
Preview:
TRANSCRIPT
About Me
Hans Knöchel25 years oldTitanium Developer since 201145+ Apps built with Titanium MobileiOS Core-Engineer at Appcelerator since 2015Member of the Hyperloop working-group
hansemannnnhansemannn
Agenda
Pre:HyperloopHyperloop Overview
IntroductionRequirementsFunctionality
Hyperloop ArchitectureNative WrapperMetabaseCLI
RoadmapUpcoming ReleasesFuture Ideas
Demo
Pre:Hyperloop
Mobile applications using Titanium MobilePowerful cross-plaform framework
Native modules using Objective-C & Java2 required environments for module development(Advanced) knowledge in Java/Objective-C required
Core API based on Proxy systemLimited API coveragePossible delay after native OS releases because of missing wrappers
Hyperloop Overview - Introduction
Use native APIs in JavaScriptNo Objective-C (iOS) / Java (Android) requiredNo proxy backend programming required
Combine Titanium Mobile and HyperloopAdd a native view to a Ti.UI.* view (and vice versa)
Use 3rd-Party libraries including CocoaPods (iOS)Improved dependency managementExtend with Objective-C and Swift source
3rd-Party libraries on Android using AAR‘s and JAR‘s
Hyperloop Overview - Requirements
Project requirementsTitanium Mobile SDK 5.2.0+Hyperloop 1.x module & plugin<run-on-main-thread> enabled<use-jscore-framework> enabled
Other requirementsiOS: 9.x SDK (or later)Android: API level 23 (or later)JavaScript knowledge
Hyperloop Architecture – Native Wrapper
Native Titanium Mobile moduleHandle Objective-C / Java objectsManage new/existing contexts
Receive wrapper (using the memory address)Map data typesProtect current Hyperloop context from GC
Unit testing
Hyperloop Architecture – Metabase
Used for Hyperloop iOS & AndroidParse native classesCompute native classes, properties etc. in ASTGenerate JS objects to be called from the frontendAlso used to parse 3rd-Party libraries
CocoaPods, local libraries
Hyperloop Architecture – CLI
Validate Hyperloop requirementsGenerate metabaseLook for local resoures (Libraries, XIB‘s, etc.)
Compile resourcesInject in Xcode project
Hook into titanium build system
Hyperloop Roadmap- Upcoming Releases
Hyperloop 2.0.1Release: February 27, 2017
Hyperloop 2.1.0Q2/2017 – together with SDK 6.1.0
Hyperloop Roadmap - Future Ideas
Code completionIdea: Generate a JSCA file like done with the SDKInclude all related API‘s to be auto-completedCould be used in both Appc-Studio and Atom
Improve drop-in Swift-supportAlready support, but with limitations
Live-View supportProblem: You‘d need to
top related