python中的gsm位置

时间:2010-07-31 09:39:50

标签: python location gsm pys60

我在S60上运行python中的脚本文件:

import location

def current_location():
 gsm_loc = location.gsm_location()
 print gsm_loc

current_location()

而不是打印mcc,mnc,lac和cellId的元组,它打印无。

在我的python shell之上,我看到了包含的功能之间的位置。

可能是什么问题?

情况的发展:

我想也许,我的问题是缺乏能力。所以我去签署了PythonScriptShell文件。 我使用OPDA网站 - 我知道他们签署了所有功能,但有三个 - 我不使用。 我在手机上安装了已签名的PythonScriptShell文件(N95)。在顶部,功能列表没有改变。试图再次运行脚本: 相同的结果 - 打印无。

如果有人可以帮助我,这非常重要。

谢谢。

2 个答案:

答案 0 :(得分:2)

我想我现在可以回答问题的一部分:

打印无原因是因为需要另一个功能:ReadDeviceData,它不包含在python shell顶部的功能列表中。

仍然是问题的另一部分,为什么在我签署PythonScriptShell文件时没有包含此功能?它不是三种限制能力之一。

答案 1 :(得分:0)

我对所有必要的脚本功能都有同样的问题:'PowerMgmnt',' ReadDeviceData ','WriteDeviceData','TrustedUI','ProtServ','SwEvent','网络服务',' LocalServices','ReadUserData','WriteUserData',' Location ','SurroundingsDD','UserEnviroment'。

让我们来看看PythonForS60/module-repo/dev-modules/location.py的源代码:

import e32
import _location

def gsm_location():
    if e32.s60_version_info>=(3,0):
        ret = _location.gsm_location()
        if ret[4]==1: # relevant information ?
            return (int(ret[0]),int(ret[1]),ret[2],ret[3])
        else:
            return None # information returned by _location.gsm_location() not relevant
    else:
        return _location.gsm_location()

在我的诺基亚E71 e32.s60_version_info == (3,1)上,我也获得None值。

我真的不知道'不相关'是什么意思,而是直接打电话

>>> import _location
>>> _location.gsm_location()
(u'257', u'01', 555, 11, 0)

返回与我的客观现实接近的东西。