Software Archive
Read-only legacy content
The Intel sign-in experience has changed to support enhanced security controls. If you sign in, click here for more information.
17060 Discussions

Intel XDK Vs Android Studio


This question is addressed to people who have used android studio and now are working with Intel XDK,
What do you think are the main strengths of XDK against android studio? Ignoring the fact that exports to iOS and Windows.
What are the weaknesses?
They have used Xamarin Studio? What do you think?

0 Kudos
3 Replies

Experiences of my student's are:

​Most examples from Github dont't work with XDK 3491 and BLE - Arduino101



There are no complete tutorials of the structure of XDK .....  and a lot students are too.

I defined 15 Projects with Intel XDK and Arduino101 .. now we switched to Arduino Studio - since 1 Day and one project work.







Juergen -- I assume you are referring to Arduino projects found in GitHub? Or are you referring to Intel XDK samples? The Intel XDK can be used to develop JavaScript projects that run on Node.js on the target device. It does not support the use of Arduino OS on the target, it supports the use of Node.js on the target. So rather than programming in C or C++ you are programming in JavaScript, thus Arduino samples will not work with the XDK.


Jürgen W. wrote:

Thank you for the answer,

So far I read, is Intel XDK "One solution for IoT applications and mobile app dev!". I thought it is a solution for the developement of Apps without restrictions on Server side - node.js.

Mraa is a C/C++ library uses for javascript on Intel Edison?  

Yes - all the examples are from Github. 

​It seems as if there is competition between Curie and Edison within Intel.

The apps you develop with the XDK do not require a server component. There are two fundamental types of apps that can be developed with the XDK:

  • standard Cordova (aka PhoneGap) apps (also known as hybrid mobile HTML5 apps)
  • Node.js apps for IoT devices

The first type is a packaged app that can be deployed to Android, iOS and Windows devices. Cordova actually supports additional platforms, but those three are all we support with the XDK. When you use the XDK to create a mobile app you are creating a standard Cordova CLI application, where the CLI build system is located in the cloud. You can get more details about Cordova CLI apps here > <

The second app type is simply a JavaScript app (no HTML or CSS) that runs on a Node runtime on the IoT device. So the IoT devices that can be used must include a standard Node.js runtime engine. At the moment, the devices we support using this technique are Galileo, Edison, the recently introduced Joule and several "smart gateway" products. All of these devices include an embedded Linux on the device and have a recent version of Node.js installed on the system.

MRAA (and UPM) is a library that facilitates access to I/O on a board. It is restricted to a specific set of boards since it must be written for each board it supports. The MRAA library is written in C, to provide access to low-level drivers and I/O. However, it also supports a Java and JavaScript interface into the C MRAA library. Thus, MRAA is available to Node.js IoT apps via that JavaScript interface on those platforms that are supported by MRAA.

Regarding Curie and Edison -- there are a variety of small CPU solutions that are coming out of Intel. Some of them are supported by the XDK and some are not.