4

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

import location

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

current_location()

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

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

可能是什么问题?

事态发展:

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

如果有人可以帮助我,这真的很重要。

谢谢你。

4

2 回答 2

2

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

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

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

于 2010-07-31T13:11:19.060 回答
0

我对所有必要的脚本外壳功能都有同样的问题:'PowerMgmnt'、' ReadDeviceData '、'WriteDeviceData'、'TrustedUI'、'ProtServ'、'SwEvent'、'网络服务'、'LocalServices'、'ReadUserData'、'WriteUserData' ,“位置”,“环境DD”,“用户环境”。

让我们看一下源代码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)

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

于 2015-01-11T02:24:38.847 回答