Считывание идентификатора ячейки с Nokia S40 с помощью J2ME

StackOverflow https://stackoverflow.com/questions/1306233

Вопрос

Читая форумы Nokia, кажется, что доступ к идентификатору ячейки и связанной с ним информации с телефонов Nokia серии S40 практически невозможен, если только ваш МИДлет подписан, и даже это будет работать только для S40 3rd Edition FP1 и выше.

Я попробовал следующее на телефоне Nokia S40 Dev Platform 2, используя Java Я:

System.getProperty("com.nokia.mid.cellid");

Однако возвращенное значение было нулевым.

Есть ли какой-либо обходной путь для этого, может ли идентификатор ячейки считываться другими методами, такими как Modem AT (я думаю, это будет работать только с телефоном, подключенным к ПК), Набор инструментов для SIM-приложений или другое?

Это было полезно?

Решение

И даже если это S40 3rd Edition FP1 (или выше) и подписанный - он должен быть подписан Nokia!(действительно).Я не знаю о других обходных путях, но я также пробовал JSR-179 и не смог этого сделать.

Другие советы

Я использую класс LocationProvider из SDK.Вот моя функция:

public LocationProvider getCellIdLocationProvider() {
    try {
        int[] methods = {Location.MTA_ASSISTED | Location.MTE_CELLID
            | Location.MTE_SHORTRANGE | Location.MTY_NETWORKBASED};
        return LocationUtil.getLocationProvider(methods, null);
    } catch (LocationException e) {
        System.err.println("Failed to get cell id location provider.");
        return null;
    }
}

возможно, вы также используете GPS (если он есть на устройстве), заменив методы другими опциями.Просто убедитесь, что в спецификациях устройства у него есть JSR 179.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top