AIDE - Android Integrated Development Environment presentation

Post on 22-Nov-2014

458 views 4 download

description

Hans Kratz and Dennis Strein presentation of the AIDE made at the Codefest Karlsruhe on February 20th

Transcript of AIDE - Android Integrated Development Environment presentation

AIDEDevelop apps with an app

appfour GmbH

Hans KratzDennis Strein

www.android-ide.com

Session Overview

•Introduction to AIDE

•Demonstration time

•The magic of AIDE

•Questions

What is AIDE

•An Android app to make Android apps•Android Integrated Development Environment

•Android SDK apps with Java & XML•Android NDK apps with C/C++•Phonegap/Cordova apps with HTML5 &

JavaScript (with AIDE for PhoneGap)

AIDE Popularity

1.000.000 downloads/year

Install AIDE on your device (free)•In Google Play search for „AIDE“ or just „IDE“

Demonstration time

The magic of AIDE

•Full Android Build Process

•Java/Dalvik compilation on device

•Native build on device (x86, arm)

Android Build Process (1)

Android Build Process (2)

Focus: NDK support

•Not intended to run directly on Android devices

•Officially supports only ia32/ia64 on Windows, Linux and Mac OS X

NDK support in AIDE

•Based on NDK for Linux•Currently only the default toolchain GCC 4.6 is

supported•Planned: Support more toolchains•Planned: Support x86 target on arm devices,

arm target on x86 devices•Crazy idea: Support the Intel C/C++ compiler

Technical challenge: GNU libc

•Problem:- GCC toolchain requires GNU libc- Android only has limited bionic C library

•Solution: Link GCC toolchain binaries statically against GNU libc

Technical challenge: ARM architecture

•Problem: NDK not supported on ARM

•Solution: Cross-compile NDK for ARM on Linux x86

Technical challenge: UNIX tools

•Problem: Most NDK builds require a proper shell and UNIX tools (find, sed, awk, …)

•Solution: - Bundle Busybox- Pass variables to GNU Make for a proper shell, dirname binary, …

Giving back to the community

•NDK is part of the Android Open Source Project (AOSP) under the Apache 2.0 licence.

•Our modifications are on GitHub:https://github.com/android-ide/aide_ndk

•Cave: The build process is complex.

Recap

•Develop Android apps with your Android device

•Work on your apps whether Java or native on-the-go

•AIDE magic makes it happen

Thank you for your time!

Questions?

web: www.android-ide.com

email: ide4android@googlemail.com