Ищу: Android Compass API

Я программирую приложение для Samsung Galaxy, используя flash. Я хочу получить доступ к цифровому компасу, но не могу использовать ActionScript. :(

Поэтому мне было интересно: можно ли использовать api для Android, который проверяет цифровой компас и записывает данные в XML-файл? Этот API должен работать в фоновом режиме, пока flash-приложение находится впереди. …

Знаете ли вы какой-либо API, который делает это? Или какой-то API, который можно было бы легко изменить, чтобы он работал таким образом?

К сожалению, я мало разбираюсь в Java-программировании или программировании для Android.

Спасибо за все ваши подсказки или идеи... Клаудия.


person Claudia    schedule 09.05.2011    source источник


Ответы (3)


Вы можете написать "родное" Java-приложение для Android, использующее SensorManager для записи значений в файл, управляемый таймером. Тем не менее, это в значительной степени противоречит цели создания приложения во флэш-памяти (если только вы не делаете это, потому что уже знаете флэш-память).

Если это приложение AIR, может быть хак, который позволит вам получить доступ к Android API:

http://elromdesign.com/blog/2010/10/29/hacking-native-android-with-air-app-to-allow-air-access-unavailable-apis/

Я лишь смутно понимаю, что они делают, и сам не пробовал.

person MusiGenesis    schedule 09.05.2011

Вместо того, чтобы делать грязный обходной путь сохранения данных в XML, а затем читать их во Flash, что, кстати, будет медленным, вы можете просто использовать Adobe Native Extensions. Это механизм, который не позволяет вам писать и использовать собственный код Android из Flash (Adobe AIR для мобильных устройств).

См. эту ссылку: http://www.adobe.com/devnet/air/native-extensions-for-air.html

И учебник здесь: http://www.adobe.com/devnet/air/articles/developing-native-extensions-air.html

person Magic    schedule 02.01.2012
comment
Добро пожаловать в stackoverflow, Magic, и спасибо за ваш полезный ответ. - person Maarten Bodewes; 03.01.2012

посмотрите в этой демонстрации API http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/Compass.html

я думаю, что вы можете найти то, что вам нужно..

также загляните в http://developer.android.com/reference/android/hardware/SensorManager.html для типа SENSOR_ORIENTATION

http://developer.android.com/reference/android/hardware/SensorManager.html#getOrientation(float[], float[])

SensorManager.getOrientation() действительно может возвращать нужные вам значения!

person Rejinderi    schedule 10.05.2011