gsm местоположение в питоне - PullRequest
4 голосов
/ 31 июля 2010

У меня есть этот файл сценария в python, работающий на S60:

import location

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

current_location()

вместо печати кортежа mcc, mnc, lac и cellId, который печатает None.

поверхоболочка python Я вижу расположение между включенными возможностями.

в чем может быть проблема?

Развитие ситуации:

Я подумал, может быть, тем не менее,Моя проблема - отсутствие возможностей.Поэтому я пошел подписывать файл PythonScriptShell.Я использовал сайт OPDA - я знаю, что они подписывают все возможности, но три - которые я не использую.Я установил подписанный файл PythonScriptShell на свой телефон (N95).Вверху список возможностей не изменился.попытался запустить скрипт снова: тот же результат - выводит None.

Если кто-то может помочь мне с этим, это действительно важно.

спасибо.

Ответы [ 2 ]

2 голосов
/ 31 июля 2010

Я думаю, что теперь могу ответить на одну часть проблемы:

причина печати Нет, потому что нужна была другая возможность: ReadDeviceData, которая не была включена в список возможностей поверх оболочки Python.

Тем не менее, оставаясь другой частью проблемы, почему эта возможность не была включена, когда я подписал файл PythonScriptShell?Это не одна из трех ограниченных возможностей.

0 голосов
/ 11 января 2015

У меня такая же проблема со всеми необходимыми возможностями сценариев: «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()

На моем Nokia E71 e32.s60_version_info == (3,1) и я тоже получаю значение None.

Я действительно не знаю, что означает «не имеет значения», но прямой вызов

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

возвращает что-то близкое к моей объективной реальности.

...