Я использую Titanium SDK 1.5.1 для iPhone и Android.
У меня есть приложение, которое отлично загружает карту с моей текущей позиции на iPhone. Но для андроида ничего не показывает, кроме ошибки от Geolocation API.
Я добавил свой ключ API карты Android и другие свойства в файл tiapp.xml:
<property name="ti.android.debug" type="bool">false</property>
<property name="ti.android.google.map.api.key.development">xxxxxxxxxxxxxxxxxxx</property>
<android xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/>
</android>
Затем в моем js-файле я добавил две строки:
Titanium.Geolocation.accuracy = Titanium.Geolocation.ACCURACY_BEST;
Titanium.Geolocation.distanceFilter = 10;
А для звонка вот код:
Titanium.Geolocation.getCurrentPosition (функция (е) {
if (e.error)
{
alert('Error while retrieving your position!');
return;
}
var longitude = e.coords.longitude;
var latitude = e.coords.latitude;
....
На моем устройстве приложение возвращает предупреждение, даже если я разрешаю Android получить доступ к моей позиции (в настройках Android).
Так в чем же проблема?
Спасибо заранее!