Does Android really exist on platforms other than ARM?

I want to port an application written in C ++ to android. Converting an application from C ++ to Java will require a lot of work, which I would prefer to use to improve the application on this platform instead of fixing conversion errors and resolving refactoring problems.

NDK seems to be a good way, but I don’t really want to miss the platform (if this is a significant part of the market) just because NDK does not support or does not support it.

Android claims to support MIPS, ARM, X86 and others ... but in fact, all the implementations I saw are only on ARM (or compatible with a pen). I checked this on this site: http://www.pdadb.net/

Was there a bad decision to use NDK?
Are there any non-ARM devices that launch or run Android?
Where can I find more information about this?

Thanks in advance!

+7
source share
4 answers

At the moment, the problem is not that you will not lose market share due to the processor architecture, since there are currently very few devices without ARM devices on the market, the problem is that you can lose market share due to of what users run Android 2.3 or later that you will need to use to create a completely native application with access to windows, sensors and input subsystems.

Avoiding code rewriting is a good goal, but you may have to rewrite some of the code anyway due to heterogeneous Android windows and lifecycle APIs. Now you have to rewrite some important parts of the code in C ++, and not in Java.

You can try a hybrid approach when you write most of the user interface in Java and then make calls to existing C ++ code.

Are you making a game? Then you probably want to deal with these problems and click on NDK. If not, try to implement as much of the Java program as possible and use the NDK for the complex, tested parts of your code that should be fast.

+5
source

The documentation gives the following:

The latest release of the NDK supports these ARM instruction sets: ARMv5TE (including Thumb-1 instructions) ARMv7-A (including Thumb-2 and VFPv3-D16 instructions, with optional support for NEON/VFPv3-D32 instructions) Future releases of the NDK will also support: x86 instructions (see CPU-ARCH-ABIS.HTML for more information) 
+3
source

Was there a bad decision to use NDK?

For NDK algorithms in order. For NDK games, ok. For the implementation of a regular application, NDK will not be very useful.

Are there any non-ARM devices that launch or run Android?

Google TV runs on x86 (Atom).

+2
source
+1
source

All Articles