What Android devices support jni?

I developed an Android application that uses JNI ( native Java interface ) for Archos 43.

There were no problems, and I was able to run the application smoothly. Later, I tried to launch the same application on the Samsung I9100G Galaxy S II , as well as the Samsung I9100 Galaxy S II .

I managed to run the application on the I9100G , but not on the I9100 .

The reason is that part of the JNI application was not supported on the I9100.

I tried to find out the reason for this and was able to find that the I9100G uses Ti OMAP 4430 chipset and PowerVR SGX540 as GPU whereas I9100 uses Exynos 4210 chipset and Mali-400MP as GPU.

I suspect the cause may be a change in the chipset (as Archos 43 also uses Ti OMAP). But no further results could be obtained from my search.

update The application uses bluetooth. When I try to connect to user equipment (CH), I cannot get any response from CH when I launch the application on the I9100. The bluetooth communication part is recorded using jni.

So my question is: can I run my application from JNI to I9100 due to the chipset, and if so, why?

Also a more general question: which devices support Android JNI applications and what are the main functions needed in the device to run the JNI Android application? (I spent a lot of time trying to find answers to all these questions, and any help would be greatly appreciated.)

Thanks.

+7
source share
2 answers

Support for all JNI Android devices is how most of the OS is implemented: Java services and frameworks using native libraries through JNI. However, there are different architectures, and if you have your own module, you need to make sure that you have built it for each architecture that you want to support. Even if you focus only on ARM devices, there are ARMv5 and ARMv7 there. ARMv5 should work at all, but slower.

Galaxy SII devices probably use the same architecture, so you are facing a different problem / error. What mistakes did you get? Put a log code, if available. Perhaps you are trying to access equipment that is not available on one of the devices? Or a link to system libraries that are missing for some reason?

+3
source

Now that you have reported that the problem may be related to BT on 2.3.3, all this makes sense. The Android Bluetooth interface prior to 4.0 was not standardized, and most likely your code is TI OMAP. So, if you want to support other chipsets, you need to contact other drivers or target devices with ICS and higher.

+1
source

All Articles