Titanium:Open Privacy - >位置服务以编程方式

时间:2015-05-06 20:43:56

标签: ios8 titanium titanium-mobile

以下代码能够在Titanium中以编程方式(iOS 8)成功启动应用程序的设置

var settingsURL = Ti.App.iOS.applicationOpenSettingsURL;
if (Ti.Platform.canOpenURL(settingsURL)) {
  Ti.Platform.openURL(settingsURL);
}

问题是,如果用户在隐私权页面中关闭了位置服务,则不允许他/她在应用设置内更改此设置,要求用户返回设置 - >隐私 - >定位服务。这对用户体验非常不利。

我知道可以启动隐私 - >定位服务直接,因为许多应用程序,如:酒店Tonight,Foursquare,Dojo等。

如何在Titanium中执行此操作?

我的配置:SDK 3.5.1GA& iOS8上。

2 个答案:

答案 0 :(得分:0)

不,没有可用的API。 在iOS 8中,您可以直接打开设置但不能打开位置设置 有一些url方案来打开设置功能,例如

 Ti.Platform.openURL('prefs:root=LOCATION_SERVICES');

但苹果从iOS 5.1中删除了它。所以它不适用于5.1及更高版本。

答案 1 :(得分:0)

为此,您需要尝试创建Titanium.Geolocation的侦听器,如:

Titanium.Geolocation.addEventListener('location', locationCallback);

请注意,即使没有检查您是否有权限,您仍需要执行此操作,这样iOS会提示您使用警告对话框打开位置服务 ,因此,您可以直接重定向到隐私 - >位置服务

相关问题