python中的gsm位置

发布于 2024-09-11 21:54:29 字数 529 浏览 4 评论 0原文

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

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

谢谢。

I have this script file in python running on S60:

import location

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

current_location()

instead of printing a tuple of mcc, mnc, lac and cellId it prints None.

on top of my python shell I see location between the capabilities included.

what can be the problem?

Development of the situation:

I thought maybe nevertheless, my problem is lack of capabilities. So I went to sign the PythonScriptShell file.
I used OPDA website - I know they sign all the capabilities but three - which I don't use.
I installed the signed PythonScriptShell file on my phone (N95). On the top the list of capabilities didn't change. tried to run the script again:
same result - prints None.

If anyone can help me with this, it's really important.

thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

蓝梦月影 2024-09-18 21:54:29

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

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

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

I think I can answer now one part of the problem:

the reason for printing None is because there needed another capability: ReadDeviceData which wasn't included in the capabilities list on top of python shell.

still, remaining the other part of the problem, why this capability wasn't included when I signed PythonScriptShell file? It is not one of the three restricted capabilities.

蘑菇王子 2024-09-18 21:54:29

我对所有必要的 scriptshell 功能都存在同样的问题:“PowerMgmnt”、“ReadDeviceData”、“WriteDeviceData”、“TrustedUI”、“ProtServ”、“SwEvent”、“网络服务”、“LocalServices”、 “ReadUserData”、“WriteUserData”、“位置”、“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)

返回的结果接近我的客观现实。

I have same issue with all necessary scriptshell capabilities: 'PowerMgmnt', 'ReadDeviceData', 'WriteDeviceData', 'TrustedUI', 'ProtServ', 'SwEvent', 'Network services', 'LocalServices', 'ReadUserData', 'WriteUserData', 'Location', 'SurroundingsDD', 'UserEnviroment'.

Let's take a look at source code from 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()

On my Nokia E71 e32.s60_version_info == (3,1) and I get None value too.

I don't really know what means 'not relevant', but direct calling

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

returns something close to my objective reality.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文