2012-11-21 43 views
0

假设位置下的设备“使用无线网络”和“使用GPS卫星”设置未启用,是否仍可检索位置坐标。当位置服务未启用时检索GPS坐标

目前,最好是将用户重定向到设置页面未启用。我发现这种破坏性需要远离应用程序。

如果我没有弄错,可以通过编程启用设置(我是否正确?)。

我不需要确切的坐标,是否有可能得到没有启用设置的手机信号塔ID?

在此先感谢

回答

0

同意 - 在较早的android版本中,可以以编程方式打开GPS - 但更新的版本不允许发生这种情况。 正如Anup所说 - 现在常见的可接受的做法是将用户重定向到选项页面,并允许用户选择应用程序允许使用的GPS的类型和性质。

不要忘了,你不需要“离开应用程序”,以获取用户打开GPS,你可以将它们发送到设置自己:

startActivityForResult(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS), 0); 

那么这将回到你的应用,在那里它离开了 - 给使用一个无缝的体验,并且他们将从其他Android应用程序熟悉。

0

,而不要求用户首先是不好的做法编程设置任何东西。

您可以做的是,如果您无法获取位置,请让用户打开GPS或告诉他您的应用程序将无法工作并关闭。

1

不。如果用户不想给你他的位置,你无法获得他的位置。

这是一个安全措施,它存在的理由很充分。如果您试图破坏这一点,您的应用将被视为恶意软件。

将用户重定向到设置页面是最佳选择。

0

以编程方式切换位置设置无需用户同意是不可能的,更不用说不好的做法。您可以提示用户并指示他开启位置设置,或者如果您编程跟踪设备用户的进度,则可以让程序发送某种类型的提醒,告诉他们位置设置已关闭。

0

Deep dive into location有一组Android的LocationManager的最佳实践。您不需要激活GPS,在很多情况下,移动网络本身可以很好地近似位置而不占用额外的电池。