2011-01-14 56 views
0

我知道你不能打开应用程序中的GPS,而无需转到系统首选项。 但我已经下载了GPS开/关小部件,并且这个小部件完成了这项工作。 我已经对apk进行了反编译,以查找程序员是如何完成这项工作的,但dex文件并没有显示代码,而是显示了函数和信息。 他是如何做到这一点的想法?打开GPS开启/关闭小部件的GPS

+0

哼;我从来没有注意到这一点,我已经在许多主题现在标记接受的答案:) – Pachanka 2011-01-14 22:46:21

回答

2

使用下面的函数

buildAlertMessageNoGps()和launchGPSOptions()

,以实现自己的目标。

看到 The Link

+0

nope,没有去偏好 – Pachanka 2011-01-14 22:46:42

0

你可以看一下源代码,如果他的贴吧。有时候人们将自己的代码托管在GIT上,并且可以浏览他们的整个项目。特别是除非你熟悉使用dalvik反编译代码..那么这是一个棘手的路线。

如果您想切换GPS,只需让您的小部件激活一个活动,即通过将小部件的状态通过意图传递给活动来切换GPS。然后让你的活动解析这个,然后关闭它自己。

但是;我宁愿通过一项服务来完成,这是一项没有UI的活动。这项服务可以与您的应用程序一起启动,当收到特定的广播时,执行一些可以通过小部件触发的功能。

具体而言,您需要查看一种类型的广播收听。有基于XML的意图过滤器,它将立即发送这些特定的广播到您的应用程序,可以相应地处理。例如,你的小部件是一个带有标题的切换按钮。当您切换按钮时,您是否使用切换按钮的状态向小部件代码发送意向您服务的广播。然后在服务中,您将控制GPS或手机上任何其他组件的状态。