Developing native Android Apps with Beacon Mountain

Welcome to my blog about what is Beacon Mountain and what it brings to Android development.

Please refer to the Beacon Mountain website for further information on system requirements.


Description:

Beacon Mountain provides a productivity-oriented design, coding, and debugging tools for native apps targeting Android-based ARM and Intel Atom processor-based devices, including smartphones and tablets. The tools are compatible with Eclipse and support popular Android SDKs.  

For which Android Apps is Beacon Mountain targeted?

Beacon Mountain is for app developers who are writing native Android apps. Apps that are memory intensive or whose performance may be critical may not run well in a virtual machine.  For those apps, being able to embed C and C++ components within the app will allow the best performance.  For other apps where performance or memory usage is not critical, developers may choose to develop apps using HTML5, making their deployment to many environments quick and easy.  If you are interested in learning more about HTML5 app development, check out the Intel(r) XDK.

Some key features of Beacon Mountain are:

  • It provides a simple and fast installation of popular Intel developer tools as well as some third party tools. This is actually a pretty big deal if you have ever tried installing the individual tools separately.  Beacon Mountain installs them all and insures that all the paths are correct.
  • It is compatible with and augments existing Android SDK and NDK toolkits
  • It supports Apple OS X*, Microsoft Windows* 7 and 8 host systems.

Beacon Mountain installs the following Intel tools for x86 (the licenses required by these installations are free):

  • Intel(r) HAXM is hardware-assisted virtualization engine (hypervisor) that uses Intel Virtualization Technology to speed up Android development. Intel HAXM can only be used with the Android SDK and the Android x86 emulator images provided by Intel. Your system MUST have an Intel Processor that supports Intel Virtualization Technology(VT).  For more information on platform capabilities go to ark.intel.com.
  • Intel(r) Graphics Performance Analyzers (Intel GPA) is  a suite of graphics analysis and optimization tools to help game developers make games and other graphics-intensive applications run faster.
  • Intel(r) Integrated Performance Primitives (Intel IPP) Preview is an extensive library of software functions for multimedia processing, data processing, and communications applications for Windows*, Linux*, Android*, and OS X* environments.
  • Intel(r) Threading Building Blocks (Intel TBB) is  a widely used, C and C++ library for creating high performance, scalable parallel applications.
  • Intel(r) Software Manager is a utility that allows users to:
    • Download and install updates for your Intel® Software Development Products. (This feature has not yet been activated for Beacon Mountain.)
    • Manage subscription status of installed software.
    • Find out about the latest news for Intel® Software Development Products
  • Samples and Configurations
The following 3rd Party tools are installed:
  • Google Android SDK (ADT Bundle) 
  • Android* NDK
  • Eclipse Integrated Development Environment
  • Android* Design downloads
  • Cygwin* (for Windows operating systems) - The current version 0.6.1 installs Cygwin but this will be removed starting in version 0.7.

Note that Beacon Mountain is still in a Beta (version 0.6.1 - pre-1.0) production state and therefore you will find updated versions periodically.  Should you decide to update and reinstall:

The installer checks for a preexisting installation, as follows:

  • Windows: If previous BeaconMountain deployment is found:
    • To preserve possible user changes, the installer copies BeaconMountain, .android, and IntelSamples folders to corresponding archive locations with _xx at the end of the name, e.g. BeaconMountain_01.
    • Installer upgrades only the components that changed.
    • At end of process, upgraded product components are in the original locations with possible user changes saved off “to the side”.
    • User can then integrate any of their specific changes from BeaconMountain_01, etc. if desired. (There may be nothing to do.)
    • Once any changed data has been integrated, the archive folders (names ending with _xx) can be removed.
  • OSX: If previous BeaconMountain deployment is found:
    • To preserve possible user changes, the installer moves BeaconMountain, .android, and IntelSamples folders to corresponding archive locations with _xx at the end of the name, e.g. BeaconMountain_01.
    • Installer reinstalls all components in the normal locations.
    • At end of process, upgraded product components are in the original locations with possible user changes saved off “to the side”.
    • User can then integrate any of their specific changes from BeaconMountain_01, etc. if desired. (There may be nothing to do.)
    • Once any changed data has been integrated, the archive folders (names ending with _xx) can be removed. 

How to uninstall (Windows):

  • Go to the "Add/Remove Programs" dialog in the Control Panel and select Beacon Mountain.
  • You can choose whether or not to remove any other development materials left over in your user folder (e.g. .android and IntelSamples folders) by Beacon Mountain after the uninstall completes.

If you have difficulties or suggestions, there is a Beacon Mountain discussion forum where you can post questions (see the link in the Quick Links box.)


For more complete information about compiler optimizations, see our Optimization Notice.