Android 6.0以降でGeolocationの権限が正常に取得されましたが、Android 4.4.4で動作するようにはできません。チタンのAndroid Geolocation 6.0より古いOSの許可
私はこれが今、私はまだTiApp.xml
<android xmlns:android="http://schemas.android.com/apk/res/android">
<manifest>
<application android:theme="@style/Theme.NoActionBar"/>
<!-- Camera Permissions -->
<uses-permission android:name="android.permission.CAMERA"/>
<uses-feature android:name="android.hardware.camera"/>
<uses-feature android:name="android.hardware.camera.autofocus"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
</manifest>
</android>
に次の権限を追加しました。この
var hasLocationPermissions = Ti.Geolocation.hasLocationPermissions(Ti.Geolocation.AUTHORIZATION_ALWAYS);
から来ているコンソールに
dalvikvm: Could not find method android.content.res.TypedArray.getChangingConfigurations, referenced from method android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
[DEBUG] : dalvikvm: VFY: replacing opcode 0x6e at 0x0002
[INFO] : dalvikvm: Could not find method android.content.res.TypedArray.getType, referenced from method android.support.v7.internal.widget.TintTypedArray.getType
をこれらのエラーを得続けます運がない。これを行うために使用するコードは次のとおりです。私はバージョンをチェックすることによっても迂回しようとしました
Ti.Geolocation.accuracy = Ti.Geolocation.ACCURACY_HIGH;
Titanium.Geolocation.purpose = 'Get Current Location to search local Items';
var hasLocationPermissions = Ti.Geolocation.hasLocationPermissions(Ti.Geolocation.AUTHORIZATION_ALWAYS);
if (Titanium.Platform.model != "Simulator"){
Ti.API.info("ANDROID VERSION:"+Ti.Platform.version);
if(Alloy.Globals.versionCompare(Ti.Platform.version, "6.0") == -1){
getCurrentPosition();
} else
{
if(hasLocationPermissions == true){
getCurrentPosition();
} else {
var win = Alloy.createController('locationPermission', {callback: function(e){
Ti.Geolocation.requestLocationPermissions(Ti.Geolocation.AUTHORIZATION_ALWAYS, function(e) {
if (e.success) {
getCurrentPosition();
} else {
Alloy.Globals.createAlertDialog('There seem to be issues with determining your location.\Please enable Location Services in your Settings to use Fluid');
}
});
}}).getView();
win.open();
}
}
} else {
Ti.API.info("LOCATION FOR SIMULATOR SET TO GALVANIZE - 1644 PLATTE DENVER");
Alloy.Globals.currentLocation = {attributes:{coordinates:{"lat": 39.757885, "lng": -105.0082375}}};//Galvanize
if(successCallback) successCallback();
}
誰かがこれを解決しましたか?私は5.2.0を使用しています。GA
Mmm。だから私がGenymotionエミュレータでそれを実行していると、その許可は表示されませんか? –
私のHTC OneとS6では、インストール時にすべての権限を要求します。私のS6では、要求されたときに権限を要求します。ワンとS5にとって、彼らは決して再び尋ねません。 S6の場合、私が拒否すれば、次回のロケーションが要求されます。それを受け入れると、設定をリセットしない限り、再度尋ねません。私はgenymotionでgpsを設定していない、私はいくつか持っているのは十分幸運だとしてデバイスでそれをテストする。 – roddog
私はS6がマシュマロの唯一の人だと言わなければならない。 – roddog