Любая простая интерпретация про 3G - PullRequest
4 голосов
/ 12 января 2010

Кто-нибудь может объяснить технологию 3G с точки зрения программиста? Я немного смущен. Например, если я разрабатываю мобильное приложение с Android или IPhone SDK. Должен ли я беспокоиться о сети, которую я использовал? Или SDK имеет один и тот же интерфейс для всех этих разных сетей (3G, GPRS, CDMA). Кроме того, является ли 3G специфической технологией или набором коммуникационных технологий? Это так же, как WCDMA?

Спасибо.

Ответы [ 5 ]

5 голосов
/ 12 января 2010

Вам не нужно заботиться о конкретном протоколе, но вы можете очень хорошо различать WiFi и 3G, и ваша программа будет вести себя по-разному в зависимости от того, что доступно, потому что WiFi быстрее и дешевле. В случае iPhone даже существуют явные соглашения о том, что некоторые операции с большими объемами данных должны выполняться только через WiFi.

Другой идеей было бы определить, активен ли роуминг, и предупредить об этом пользователя (даже если телефон уже должен это делать).

3 голосов
/ 12 января 2010

Уверен, у вас нет проблем с поиском определения 3G через поиск в сети. Вот один из Википедии .

Как разработчик, ваша главная задача должна заключаться в том, должно ли разрабатываемое вами приложение работать с типом соединения уровня 3G с точки зрения пропускной способности и / или потоковой передачи. Вам может потребоваться определить уровень связи, то есть канал-носитель пакета / WiFi или просто более старый 2G (GSM и т. Д.) И т. Д.

Вам не нужно (если это не требуется) действительно беспокоиться о базовой технической детализации. Для Andriod SDK должен предоставить вам достаточно инструментов / утилит для создания приложения, абстрагированного от коммуникационного уровня.

2 голосов
/ 12 января 2010

3G - это не единая технология, а семейство стандартов мобильной связи. В разных регионах мира существуют разные стандарты. В США используется CDMA (не уверен, что и WCDMA также), в то время как в Европе используется WCDMA (или более известный как UMTS), который недавно был обновлен до HSPA. Оба являются стандартами семейства 3G.

GPRS и EDGE, которые являются стандартами семейства 2G и 2.5G, являются предшественниками семейства 3G. С точки зрения программиста, единственная разница между перечисленными стандартами GPRS, EDGE и 3G (UMTS или CDMA) заключается в скорости соединения.

2 голосов
/ 12 января 2010

3G относится к скорости и возможностям сотовой сети. С точки зрения API и программирования, нет никакой разницы, однако сеть 3G сможет передавать данные с большей скоростью, но также потреблять больше энергии аккумулятора, когда активна.

3G - это общий термин для нескольких технологий, включая UMTS, HSPA, HSDPA, EVDO. WCDMA - это просто схема модуляции, но часто она аналогична UMTS при использовании в сотовых сетях (которые определяют больше, чем простая модуляция).

1 голос
/ 12 января 2010

Чтобы протестировать ваше приложение на эмуляторе в различных условиях (хотя на данный момент нет WiFi), вы можете использовать консоль эмулятора и команду gsm.

the 'gsm data <state>' allows you to change the state of your GPRS connection
valid values for <state> are the following:

  unregistered    no network available
  home            on local network, non-roaming
  roaming         on roaming network
  searching       searching networks
  denied          emergency calls only
  off             same as 'unregistered'
  on              same as 'home'

В качестве альтернативы из командной строки:

$ adb emu gsm data roaming # set roaming

$ adb emu gsm data home # set home
...