Как определить доступные настройки APN?

Мне нужно каким-то образом получить доступ к настройкам APN в моем приложении BlackBerry. Мое приложение работает на JDE 4.2.1. Любая помощь?


person nixau    schedule 18.09.2009    source источник
comment
Я нашел похожий пост на форумах Blackberry blackberryforums.com /форум разработчиков/   -  person nixau    schedule 18.09.2009
comment
Я также нашел сообщение о некоторых недокументированных параметрах Connector.open. Может быть интересно blackberryforums.com/developer-forum/< /а>   -  person nixau    schedule 18.09.2009


Ответы (1)


Есть класс ServiceRecord, который может позаботиться об этом за вас. Вот короткий фрагмент.

ServiceRecord record = ServiceBook.getSB().getRecordByUidAndCid(uid, cid);
String apn = record.getAPN();

uid и cid зависят от того, какой сервис вы пытаетесь использовать (например, wap, wifi или что-то еще). Вы можете получить полный список всех объектов ServiceRecord, используя следующее.

ServiceRecord[] records = ServiceBook.getSB().getRecords();
String uid = records[0].getUid();
String cid = records[0].getCid();

Вы можете использовать этот код, чтобы выяснить, какая запись вам нужна и каковы ее соответствующие uid и cid.

Обратите внимание, что это один из тех классов, к которым у вас есть доступ, только если у вас есть подписанное приложение. Вот ссылка на javadocs для ServiceRecord.

ServiceRecord JavaDocs

person Fostah    schedule 18.09.2009
comment
Хорошо, а как насчет пользователя и пароля для apn? - person nixau; 18.09.2009
comment
Я предполагаю, что вы имеете в виду идентификатор пользователя и идентификатор контента? Это зависит от того, какой сервис вы пытаетесь использовать. Я предоставил некоторую информацию в теле вопроса по этому поводу. - person Fostah; 18.09.2009
comment
Смотрите, вот в чем дело. Мне нужно получить доступ к информации tcp APN, чтобы применить ее при открытии http-соединения в Connector.open(URL-адрес строки). В документации указано, что к URL можно добавить специальные конечные параметры: apn=‹имя apn›;tunnelauthusername=‹имя пользователя apn›;tunnelauthpassword=‹пароль apn›; Моя программа пытается установить базовое соединение без применения настроек apn. В случае сбоя он должен проверить доступные настройки apn и попытаться использовать их надлежащим образом. Так как бывают случаи, когда apn требует регистрации, мне также нужно установить пароль и имя пользователя. - person nixau; 18.09.2009
comment
Прости. Я не знаю, как в API можно получить эту информацию. Вы уверены, что это требование для того, что вы пытаетесь выполнить? - person Fostah; 18.09.2009
comment
Я тоже не могу найти. Итак, в свете всех моих предыдущих открытий, я полагаю, что моему приложению будут заданы эти настройки APN для конкретного оператора при запуске каким-то другим способом. С другой стороны, жаль, что RIM не предоставляет средства для получения подробной информации о точках доступа, установленных в устройствах BlackBerry. - person nixau; 18.09.2009
comment
Спасибо за помощь, Фостах. Вы все равно получили ПРИНЯТОЕ. - person nixau; 18.09.2009