Какие устройства Android поддерживают jni?

Я разработал приложение для Android, которое использует JNI ( собственный интерфейс Java ) для Archos 43.

Не было проблем, и я смог запустить приложение плавно. Позже я попытался запустить такое же приложение на Samsung I9100G Galaxy S II, а также Samsung I9100 Galaxy S II .

Я смог запустить приложение на I9100G, но не на I9100 .

Причина в том, что часть JNI приложения не поддерживалась на I9100.

Я попытался понять причину этого и смог найти, что I9100G использует Ti OMAP 4430 chipset и PowerVR SGX540 as GPU whereas I9100 uses Exynos 4210 chipset and Mali-400MP as GPU.

Я подозреваю, что причиной может быть изменение в наборе микросхем (поскольку Archos 43 также использует Ti OMAP). Но никаких дальнейших результатов не удалось получить из моего поиска.

Обновление Приложение использует bluetooth. При попытке подключиться к пользовательскому оборудованию (CH), я не могу получить никакого ответа от CH, когда я запускаю приложение на I9100. Коммуникационная часть bluetooth записывается с использованием jni.

Поэтому мой вопрос заключается в том, не удается ли запустить приложение с JNI на I9100 из-за набора микросхем, и если да, то почему?

Также более общий вопрос: какие устройства поддерживают приложения JNI для Android и каковы основные функции, необходимые в устройстве для запуска приложения JNI для Android? (Я потратил немало времени, пытаясь найти ответы на все эти вопросы, и любая помощь будет с благодарностью).

Спасибо.

Solutions Collecting From Web of "Какие устройства Android поддерживают jni?"

Все Android-устройства поддерживают JNI, вот как реализована большая часть ОС: Java-сервисы и фреймворки с использованием собственных библиотек через JNI. Однако существуют разные архитектуры, и если у вас есть собственный модуль, вам нужно убедиться, что вы построили его для каждой архитектуры, которую вы хотите поддерживать. Даже если вы ориентируетесь только на устройства ARM, там есть ARMv5 и ARMv7. ARMv5 должен работать на всех, но медленнее.

Устройства Galaxy SII, вероятно, используют одну и ту же архитектуру, поэтому вы столкнулись с другой проблемой / ошибкой. Какие ошибки вы получили? Поместить лог-код, если он доступен. Возможно, вы пытаетесь получить доступ к оборудованию, которое недоступно на одном из устройств? Или ссылка на системные библиотеки, которые по какой-то причине отсутствуют?

Теперь, когда вы сообщили, что проблема может быть связана с BT на 2.3.3, все это имеет смысл. Интерфейс Android Bluetooth до 4.0 не был стандартизирован, и, скорее всего, ваш код является TI OMAP. Итак, если вы хотите поддерживать другие чипсеты, вам нужно связаться с другими драйверами или с целевыми устройствами с ICS и выше.