【问题标题】:gsm location in pythonpython中的gsm位置
【发布时间】:2011-03-23 14:20:20
【问题描述】:

我在 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 文件。顶部的功能列表没有改变。尝试再次运行脚本: 相同的结果 - 打印无。

如果有人能帮我解决这个问题,那真的很重要。

谢谢。

【问题讨论】:

    标签: python location gsm pys60


    【解决方案1】:

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

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

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

    【讨论】:

      【解决方案2】:

      我对所有必要的脚本外壳功能都有同样的问题:'PowerMgmnt'、'ReadDeviceData'、'WriteDeviceData'、'TrustedUI'、'ProtServ'、'SwEvent'、'Network services'、' 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)
      

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-19
        • 1970-01-01
        相关资源
        最近更新 更多