Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

移动互联网开发基础

on

  • 5,385 views

公司内部培训教材,简单介绍了移动互联网开发所必须了解的基本知识,包括移动通信基础、手机操作系统、移动互联网开发基础等基础内容

公司内部培训教材,简单介绍了移动互联网开发所必须了解的基本知识,包括移动通信基础、手机操作系统、移动互联网开发基础等基础内容

Statistics

Views

Total Views
5,385
Views on SlideShare
4,765
Embed Views
620

Actions

Likes
8
Downloads
130
Comments
2

13 Embeds 620

http://www.yeeach.com 462
http://www.20ju.com 99
http://www.zhuaxia.com 9
http://xianguo.com 9
http://20ju.com 9
http://static.slidesharecdn.com 9
http://reader.youdao.com 7
http://zhuaxia.com 4
http://sns.spforum.net 4
http://old.xianguo.com 3
http://after1990.com 2
http://cache.baidu.com 2
http://www.google.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • best
    Are you sure you want to
    Your message goes here
    Processing…
  • share best resources
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • 需求驱动。 1 、移动通信现在主要提供的服务仍然是语音服务以及低速率数据服务。由于网络的发展,数据和多媒体通信的发展势头很快,所以,第三代移动通信的目标就是移动宽带多媒体通信。 从发展前景看,由于自有的技术优势, CDMA 技术已经成为第三代移动通信的核心技术。 2 、第三代移动通信系统最早由国际电信联盟( ITU ) 于 1985 年提出,当时称为未来公众陆地移动通信系统( FPLMTS , Future Public Land Mobile Telecommunication System ), 1996 年更名为 IMT-2000 ( International Mobile Telecommunication-2000 ),意即该系统工作在 2000MHz 频段,最高业务速率可达 2000kbps ,预期在 2000 年左右得到商用。目前的主要体制有 WCDMA 、 cdma2000 和 TD - SCDMA 。 3 、需求是发展的动力。 3GPP 定义的下一个移动宽带网络标准 LTE(Long-Term Evolution 长期演进 ) 业已列入 3GPP R8 正式标准。在 20MHz 载波的情况下, LTE 拥有下行 326Mbps ,和上行 86Mbps 的带宽,延时小于 10 毫秒,可以实现移动高清电视和互动游戏等业务,更高的带宽预示着移动多媒体时代。

移动互联网开发基础 移动互联网开发基础 Presentation Transcript

  • 移动互联网开发基础 出家如初 , 成佛有余 http://www.yeeach.com 20 10 年 11 月
  • 议题
    • 移动通信基础
    • 智能手机操作系统
    • 移动互联网开发基础
  • 移动通信发展概述 AMPS TACS NMT 其它 GSM CDMA IS95 TDMA IS-136 PDC 第一代 80 年代 模拟技术 第二代 90 年代 数字技术 第三代 IMT2000 宽带技术 UMTS WCDMA CDMA2000 1X 需求 驱动 TD- SCDMA 需求 驱动 GPRS HSPA EV-DO Super 3G WiMAX 需求 驱动 更高的速率 LTE 第四代 LTE 移动宽带
  • 从模拟通信( 1G) 到数字通信( 2G )
    • 1G :模拟蜂窝网络
      • 第一代移动通信技术( 1G ):采用频分多址( FDMA )的模拟调制方式,主要缺点是频谱利用率低,信令干扰话音业务,不能进行长途漫游,只能是一种区域性的移动通信系统,保密性差、不能提供数据业务。
    • 2G :数字网络
      • 第二代移动通信技术( 2G ):主要采用数字时分多址( TDMA )技术和码分多址( CDMA )技术。第二代移动通信技术区别于前代,使用了数字传输取代模拟,并提高了电话寻找网络的效率
  • 2.5G 移动通信技术
    • 2.5G : IP 数据网络
      • 2.5G 技术突破了 2G 电路交换技术对数据传输速率的制约,引入了分组交换技术,从而使数据传输速率有所突破,是一种介于 2G 与 3G 之间的过渡技术。
      • 2.5G 的典型代表是美国的 CDMA 1x 系统和欧洲的 GPRS 系统。
      • GPRS : General Packet Radio Service (通用分组无线业务)
      • EDGE : EnhancedData rate for GSM Evolution (增强数据速率的 GSM 演进)
  • 3G :高速 IP 数据网络
    • 3G :高速 IP 数据网络
      • 第三代移动通信技术的最大特点是在数据传输中使用分组交换( Packet Switching )取代了电路交换( Circult Switching )
      • 3G 与 1G 、 2G 通信技术的主要区别是在传输声音和数据的速度上的提升,它能够要能在全球范围内更好地实现无缝漫游,并处理图像、音乐、视频流等多种媒体形式,提供包括网页浏览、电话会议、电子商务等多种信息服务,同时也要考虑与已有第二代系统的良好兼容性。
      • 为了提供这种服务,无线网络必须能够支持不同的数据传输速度,也就是说在室内、室外和行车的环境中能够分别支持至少 2Mbps (兆比特/每秒)、 384kbps (千比特/每秒)以及 144kbps 的传输速度。(此数值根据网络环境会发生变化 ) 。
      • 目前的 3G 标准有 WCDMA 、 CDMA2000 、 TD-SCDMA 。
  • 4G :全 IP 数据网络
    • 4G :全 IP 数据网络
      • 到 4G 时代,电路交换将完全消失。所有语音通话将通过数字转换,以 IP 形式进行。因此在 4G 网络进行通话,将可以依靠有线或无线网络而不一定需要移动信号覆盖。
  • GSM 系统构成
  • GSM 系统组成
    • 1 、移动台( MS )
      • 是移动系统中直接由用户使用的移动设备,并分为“手机”和车载台两种
    • 2 、基站分系统( BSS )
      • 是无线移动网的通信部分的所有地面基础设施。 BSS 通过无线接口与移动台连接,通过基站控制器( BSC )与移动交换中心连接 ;BSS 完成无线发送、接收和管理功能,还接受网管系统控制。
    • 3 、交换子系统( SS )
      • 包括移动交换中心( MSC )和存储用户数据和移动管理信息库。 MSS 还管理移动网中用户与其他通信网的通信。
    • 4. 操作和维护分系统( OSS )
      • 以电信管理网 TMN 的概念规定管理目标,网内所有操作维护设备形成一个完整的系统,对网内业务控制设备进行全面管理。
  • GSM 系统组成
    • 交换系统( SS )
      • SS 是整个移动网的控制中心,与公网中的电话交换设备功能类似,具有话务控制、号码分析、计费、呼叫统计等功能 ,另外它还具有实现数据业务的功能。
    • 交换系统包括下列功能单元:
      • 移动业务交换中心( MSC )
      • 拜访位置寄存器( VLR )
      • 归属位置寄存器( HLR )
      • 鉴权中心( AUC )
      • 设备识别寄存器( EIR )
      • 短信息服务中心( SC )
      • 操作维护中心( OMC )
  • 移动业务交换中心( MSC )
    • 移动交换中心 (MSC) 在 GSM 中是核心:
    • ► 交换功能;
    • ► 支持移动性的附加功能;
    • ► 网络资源管理;
    • ► 通过网关 MSC (GMSC) 实现互通功能;
    • ► 数个数据库的综合。
    • MSC 的功能:
    • ► 下传寻呼和呼叫所特定的功能;
    • ► 7 号信令系统 (SS7) 的中止处;
    • ► 支持移动性的特定信令;
    • ► 位置登记和位置信息下传;
    • ► 新业务的提供 ( 传真、数据呼叫 ) ;
    • ► 支持短消息业务 (SMS) ;
    • ► 生成并下传计费和帐单信息。
  • 交换系统( SS )
    • HLR
      • HLR 是一个存储管理部门用于移动客户管理的数据的数据库。每个移动客户都应在其归属位置寄存器( HLR )注册登记。
      • HLR 所存储的用户信息分为两类:
        • 一类是有关用户参数的信息,例如用户类别,业务限制 , 所提供的业务,用户的各种号码、识别码,以及用户的保密参数等。
        • 另一类是有关用户当前位置的信息,例如移动台漫游号码、 VLR 地址等,用于建立至移动台的呼叫路由。
    • VLR
      • VLR 用于寄存所有进入本交换机服务区域用户的信息 。 VLR 看成是分布的 HLR , VLR 与 MSC 配对合置于一个物理实体中。
      • VLR 中寄存两类信息:
        • 一是本交换区用户参数,该参数是从 HLR 中获得的。
        • 二是本交换区 MS 的 LAI 。
  • 交换系统( SS )
    • 设备识别寄存器( EIR )
      • 存储 GSM 移动站和用户的权利;
      • 偷窃或伪造的移动站可被锁死,而且有时甚至能被定位。
      • EIR 用来检验设备的合法性,可以禁止末经批准的话机设备使用。它内存三种名单:白名单 --- 合法设备、黑名单 --- 非法设备、灰名单 --- 故障设备
    • 鉴权中心( AUC )
      • 基于 VLR 的申请生成用户的特定鉴权参数;
      • 鉴权参数用于 GSM 系统内移动终端的鉴权和空中接口用户数据加密。
  • 基站系统( BSS )
    • 1 )基站控制器( BSC/TRC )
      • 处理与 MS 的连接。通过分配逻辑信道来实现。
      • 小区数据的管理,无线信道的管理、分配、监视、释放。
      • 传输网络的管理。
      • 基站的操作与维护
      • 定位与切换
      • 话音编码与速率适配
      • 话务的集中与扩散
    • 2 )无线基站( RBS )
      • RBS 用来提供移动台与系统的无线接口,主要由无线收发信机构成。
      • 无线信号处理、发射和接收
      • 测量服务小区的 SS 和 BER , TA 。
    • 移动台的国际身份号 ISDN (又称 MSISDN )
    • 这个号码就是供用户拨打的公开号码,它应是全球唯一的,该号码结构是这样的:
    • MSISDN = CC + NDC + SN
    • CC = 国家代码(中国为 86 )
    • NDC = 国内目的地码(中国移动有 135 ~ 139 )
    • SN = 用户号码
    • 例如: 86 138 0013800
    • 如果将以上号码的国家代码 CC 去除的话,这个号码就成了移动台的国内身份号码了,目前我国的 GSM 的国内身份号码的长度为 11 位。
    GSM 的号码: MSISDN
    • 国际移动用户识别码( IMSI )
    • 这个号码是在移动通信系统内使用的用户号码,储存在用户手机 SIM 卡中。在无线信道上唯一能识别用户的号码就是 IMSI ,它用于移动通信网的所有信令之中,存储在用户识别模块( SIM ),归属位置寄存器 (HLR) 和拜访位置寄存器 (VLR) 中。其结构如下:
    • IMSI = MCC + MNC + MSIN
    • MCC = 移动网的国家代码(与 CC 不同,中国是 460 )
    • MNC = 移动网号(中国移动 TD 系统使用 00 ,中国联通 GSM 系统使用 01 ,中国移动 GSM 系统使用 02 ,中国电信 CDMA 系统使用 03 )
    • MSIN = 移动台识别码
    • 例如: 460 00 89842xxxxxx
    • 该号码最长是 15 位,这是一个用于移动网内部的号码,对用户本身没有直接意义
    • 临时移动用户识别码( TMSI )
    • TMSI 等同于 IMSI 。它的使用是出于对用户保密的原因。该号码只在本 MSC 区域有效。其结构可由管理部门选择,长度不超过 4 位。
    • 传送 TMSI 数据长度是 IMSI 的二分之一,所以使用 TMSI 作为第一次寻呼号码,能有效地增加小区的寻呼容量,对寻呼数量较大的 MSC ,使用 TMSI 寻呼可以提高寻呼成功率。
    GSM 的号码: IMSI
    • 移动台漫游号码( MSRN )
    • 这是针对移动台的移动特性所使用的号码。每次呼叫发生时, HLR 知道用户目前处在哪个 MSC ,为了向 GMSC 提供一个本次路由选择的临时号码, HLR 请相关的 MSC 给被叫用户分配一个移动台漫游号码( MSRN ),并将此号码送给 HLR 。 HLR 再将此号码转发给 GMSC ,此时 GMSC 就能够根据这个号码将主叫接至所在的 MSC 。结构如下:
    • MSRN = CC + NDC + SN
    • CC = 国家代码(中国为 86 )
    • NDC = 国内目的地码 (137/139)
    • SN = 用户号码
    • 国际移动台设备设备码( IMEI )
    • IMEI 是唯一用来设备移动台终端设备的号码,称作系列号。该号可以防止非法的移动台使用移动业务。每个出厂的移动台都指定一个不可改变的系列号,有权的号码将在网络中被定义,可以在手机上输入: *#06# 查询。其号码结构如下:
    • IMEI = TAC + FAC + SNR + SP
    • TAC = 型号认证码,由 GSM 的一个核心部门决定。( 6 位)
    • FAC = 最终装备码,用于识别制造厂家。( 2 位)
    • SNR = 序号,一个 6 个数字的排序号码,由厂家分配。( 6 位)
    • SP = 备用 ( 1 位)
    GSM 的号码: MSRN
    • 位置区识别码( LAI )
    • LAI 代表 MSC 业务区的不同位置区,用于移动用户的位置更新,其结构如下:
    • LAI = MCC + MNC + LAC
    • MCC = 移动国家号,识别一个国家,与 IMSI 中的 MCC 相同。
    • MNC = 移动网号,与 IMSI 中的 MCC 相同。
    • LAC = 位置区号码,识别在一个 GSM 网中的位置区。 LAC 的最大长度为 16BITS ,理论上最多可定义 65536 个不同的位置区。
    • 小区全球识别码( CGI )
    • CGI 用于识别一个位置区内的小区。它是在位置区识别码( LAI )后加一个小区识别码( CI )构成的:
    • CGI = MCC + MNC + LAC + CI
    • 其中 CI 最长也为 16bits ,即一个位置区内理论上最多也可定义 65536 个小区。
    GSM 的号码: LAI
  • 各种“号码”使用图示
  • 说明
    • 1. 已拨号码 (MSISDN) 被中继给 GMSC ,此号码用于接入数据库,是和接入用户 HLR 相关的号码。
    • 2. GSMC 向 HLR 发送一个包括被呼 MSISDN 的申请。
    • 3. HLR 检验其记录,找出被呼用户的当前位置,然后向被呼用户所在的 MSC/VLR 发出一个申请,而此申请中采用 IMSI 。
    • 4. MSC/VLR 收到此申请后发回包含在 MSRN 内的选路指令。
    • 5. HLR 下传此 MSRN 给 GMSC 。
    • 6. GMSC 采用此选路信息,把此呼叫沿指定的路由传给正为被呼用户服务的 MSC 。
    • 7. 该 MSC 把此呼叫路由给适当的 BSC 。
    • 8. 此呼叫被发送给被呼的用户。由于被呼用户已经在网络中登记过,因此在空中接口传送时用的是 TMSI 。
  • 移动位置服务技术
    • 位置业务( LBS , Location Based Service )是指移动网络通过特定的定位技术来获取移动终端的位置信息,为终端用户提供附加服务的一种增值业务,可广泛应用于紧急救援、导航追踪、运输调度、移动黄页等应用。
    • 在 3G 网络中广泛使用的移动定位技术有三种:基于网络的小区识别( CELL-ID )定位技术、 OTDOA 定位技术、 A-GPS 定位技术
      • 基于网络的小区识别( CELL-ID )根据移动终端所处的蜂窝小区 ID 号来确定用户的位置,因此其定位精度完全取决于移动终端所处蜂窝小区半径的大小,从几百米到几十公里不等。
      • A-GPS ( Assisted GPS )即辅助 GPS 技术,它可以提高 GPS 卫星定位系统的性能。通过移动通信运营基站它可以快速地定位,广泛用于含有 GPS 功能的手机上。 GPS 通过卫星发出的无线电信号来进行定位。当在很差的信 号条件下,非 A-GPS 导航设备可能无法快速定位,而 A-GPS 系统可以通过运营商基站信息来进行快速定位。
      • OTDOA ( Observed Time Difference of Arrival )是一种应用于 3G 网络的定位方式。这种定位技术通过移动终端测量不同基站的下行导频信号的到达时刻( TOA , Time of Arrival )实现定位,其定位精度较高,定位范围约为 100 ~ 200m 。但对时间基准的依赖性较强,同时受多径干扰的影响也较大。 OTDOA 定位响应时间比 CELL-ID 略长,大约要 10s 。该技术无需对手机进行修改而只需修改网络,即可直接向现有用户提供服务。
  • 议题
    • 移动通信基础
    • 智能手机操作系统
    • 移动互联网开发基础
  • 什么是手机操作系统?
    • 手机也像电脑一样,有自己的操作系统,没有操作系统的手机就是一块废铁。
    • 手机操作系统分类:私有操作系统、智能手机操作系统
    • 功能手机( Feature Phone ):功能手机的操作系统一般为私有操作系统,平台不对外开放,一般不能随意安装或卸载程序的固定功能设备。功能性手机一般通过 J2ME 、 BREW 平台来支持第三方软件
    • 智能手机( Smartphone ):一般指安装有智能手机操作系统并兼容第三方应用程序的手机产品
  • 功能手机 VS. 智能手机
    • Feature Phone 的软件是从通信行业的无线终端软件发展而来,是不断扩充应用功能的嵌入式软件
    • Feature Phone 的软件基本上都运行在 CPU 的特权模式,在 PC 程序员看来, Feature Phone 的软件就是一个做了 UI 的微内核
    • 智能手机的软件是从计算机行业的通用操作系统按照手持设备的需求 裁减、演变而来。
    • 智能手机的软件体系基本上照搬了 PC 的软件体系,将内核、驱动(可以编入内核,也可以独立)和应用分开,各 种应用包括最基本的窗口管理器都以应用程序的形式存在,在用户空间运行。智能手机软件与 PC 系统软件的区别主要是在应用层面的,例如显示屏大小、输入方 式;另外智能手机作为便携式设备,必须尽量减小功耗。
  • 智能手机硬件组成
    • 一部智能手机主要由无线基带芯片、存储芯片、应用处理器、多媒体加速器组成,此外,加上 LCD 显示屏和一些周边配件,就构成一台智能手机。
    • 无线基带芯片也称为通讯处理器,负责通讯功能。 GSM , CDMA 、 3G 手机,都有相应的无线基带芯片。
    • 多媒体加速器是专门为智能手机提供硬件视频和图形加速的芯片。
    • 应用处理器在智能手机中的作用中的作用和地位,相当于电脑的中央处理器和芯片组。
    • 存储芯片:智能手机上的存储空间分为 ROM 和 RAM 。 ROM 通常采用闪存芯片,用于存放操作系统和出厂时预装的应用程序。 RAM 也即平时所说的智能手机的“内存”通常是采用速度更快的 DRAM 芯片。
  • 手机的硬件实现方式
    • 只用基带芯片,采用此种方案的手机通常称作 feature phone 。
    • 基带芯片 + 协处理器( CP ,通常是多媒体加速器)。这类产品以 MTK 方案为典型代表,也是所谓的“山寨机”所普遍采用的方案。这是增强了多媒体功能的 feature phone
    • 基带芯片 + 应用处理器( AP ):也就是通常说的智能手机( smart phone )
  • 智能手机操作系统
    • 目前智能手机的系统主要有:
      • Symbian
      • Android
      • iOS
      • BlackBerry
      • Windows Phone
      • Linux
      • Palm
      • Maemo
      • Bada 等等
  • Symbian
    • 搭载塞班系统的品牌也被称作 EPOC 系统,这是最早由 Psion 公司开发的一个专门应用于手机等移动设备的操作系统。
    • Symbian OS 操作系统按内核版本分有 v6.1 , v7.0 , v8.0 , v8.1 , v9.1 , v9.2 等;
    • 按用户平台(界面)分有 S60 , S80 , S90 , UIQ 等。
    • S60 ( Series 60 ): S60 不是手机系统,而是一个基于 Symbian 系统的用户图形操作界面( UI Platform )。 现在流行的 S60 系统有以下四个版本,分别为 S60( 第一版)、 S60( 第二版)、 S60 (第三版)、 S60 (第五版)。 S60 (第五版)为触摸屏手机版本
    • Series 80( 应用于具有完整键盘的手机 )
    • Series 90( 已废弃, Nokia 7710 原本使用它 )
  • UIQ 、 S40
    • UIQ :即 User Interface Quartz 的缩写,是 Symbian 操作系统最初设定的三大 UI ( User Interface ,用户界面)分支之一。也就是说,所谓的 Symbian UIQ 是基于 Symbian 智能系统核心的用户界面之一。
    • Series 40 :诺基亚对 S40 平台的定义是一个为大众市场准备的 Java 手机平台
    • S40 构建在诺基亚的自己的封闭操作系统平台上,主要面向功能手机( Feature Phone )市场。用户只可以通过 S40 的 kjava 平台来对软件进行手机的扩展。
  • Windows Phone
    • Windows Mobile ,是 Microsoft 用于  Pocket PC  和 Smartphone 的软件平台。 Windows Mobile 的核心是 Windows CE
    • Pocket PC VS. Smartphone
      • Smartphone 基于 Windows CE 内核开发的,基于该操作系统的手机无需借助手写笔,只需用手机提供的键盘就能完成几乎所有的操作
      • Pocket PC (PPC) 则必须通过手写笔才能操作
      • 同属 Windows mobile 系列操作系统,都是基于微软 PC 的 Windows 操作系统演变而来,因此,它们的操作界面非常相似。
    • Windows Phone 7 最近即将推出,采用全新的架构,不再区分 PPC 、 Smartphone
  • iOS
    • iOS 是由苹果公司为 iPhone 开发的操作系统。它主要是给 iPhone 、 iPod touch 以及 iPad 使用。就像其基于的 Mac OS X 操作系统一样,它也是以 Darwin 为基础的。原本这个系统名为 iPhone OS ,直到 2010 年 6 月 7 日 WWDC 大会上宣布改名为 iOS 。
    • iOS 的系统架构分为四个层次:核心操作系统层( the Core OS layer ),核心服务层( the Core Services layer ),媒体层( the Media layer ),可轻触层( the Cocoa Touch layer )。系统操作占用大概 240MB 的存储器空间。
  • Android
    • Android 手机操作系统是 2007 年 11 月 5 日由美国 Google 公司基于 Linux 整合开发的嵌入式系统,后开源并由后由开放手机联盟 (Open Handset Alliance )开发
  • Palm
    • Palm 是流行的个人数字助理( PDA ,又称掌上电脑)的传统名字,是一种手持设置形式,也以掌上电脑而闻名。广义上, Palm 是 PDA 的一种,由 Palm 公司发明,这种 PDA 上的操作系统也称为 Palm ,有时又称为 Palm OS 。
    • Palm webOS 是一个嵌入式操作系统,以 Linux 内核为主体并加上部份 Palm 公司开发的专有软件。它主要是为 Palm  智能手机而开发。该平台于 2009 年 1 月 8 日的拉斯维加斯国际消费电子展宣布给公众,并于 2009 年 6 月 6 日发布。该平台是事实上的 PalmOS 继任者, webOS 将在线社交网络和 Web 2.0 一体化作为重点。第一款搭载 webOS 系统的智能手机是 Palm Pre ,于 2009 年 6 月 6 日发售。
    • 由于 Palm 被 HP 收购 ,webOS 现收归 HP 旗下 .
  • MeeGo
    • MeeGo 是诺基亚和英特尔宣布推出一个免费手机操作系统,该操作系统可在智能手机、笔记本电脑和电视等多种电子设备上运行,并有助于这些设备实现无缝集成。
    • MeeGo 的意思是 Maemo + Moblin = MeeGo ,也就是诺基亚 Maemo 系统和英特尔 Moblin 平台的融合,支持 Linux 智能操作平台,非常适合 Maemo 系统的运行。
  • J2ME
    • Java ME 也称作 J2ME(Java Platform, Micro Edition ) 是为机顶盒、移动电话和 PDA 之类嵌入式消费电子设备提供的 Java 语言平台,包括虚拟机和一系列标准化的 Java API 。它和 Java SE 、 Java EE 一起构成 Java 技术的三大版本。与 J2SE 和 J2EE 相比, J2ME 总体的的运行环境和目标更加多样化,但其中每一种产品的用途却更为单一,而且资源限制也更加严格。
    • J2ME 并不能称之为操作系统,必须依托于手机操作系统来运行
    • J2ME 的架构分为 Configuration 、 Profile 和 Optional Packages (可选包)。它们的组合取舍形成了具体的运行环境。
      • Configuration 主要是对设备纵向的分类,分类依据包括存储和处理能力,其中定义了虚拟机特性和基本的类库。已经标准化的 Configuration 有 - Connected Limited Device Configuration ( CLDC )和 Connected Device Configuration(CDC)
      • Profile 建立在 Configuration 基础之上,一起构成了完整的运行环境。它对设备横向分类,针对特定领域细分市场,内容主要包括特定用途的类库和 API 。
      • 可选包独立于前面两者提供附加的、模块化的和更为多样化的功能。目前标准化的可选包包括数据库访问、多媒体、蓝牙等等。
  • 议题
    • 移动通信基础
    • 智能手机操作系统
    • 移动互联网开发基础
  • 关于移动互联网的常见误解
    • 移动互联网 =3G
      • 移动互联网,就是将移动通信和互联网二者结合起来,成为一体。
      • 3G 只是一种移动通信技术,为移动互联网提供了强劲动力。 2.5G 时代的手机客户端开发也是移动互联网
    • 移动互联网开发 = 手机客户端开发
      • ipad 、 kindle 、 android 平板等新型智能终端的开发也是移动互联网开发
      • WAP 开发也是移动互联网开发
    • 移动互联网开发模式 = 互联网客户端开发模式
      • 对于移动互联网开发,在设计与服务器端通信协议设计时候,不可避免要考虑目前终端特点、运营商业务、服务器端实现的各种限制
    • 由于目前手机仍然是移动互联网开发的主要阵地,因此后续主要是手机客户端开发为主进行讲解
  • 移动互联网业务体系
  • 移动互联网开发问题 - 手机终端限制
    • 功能手机 (Feature Phone) :目前功能性手机仍然占据较大的市场,基本上大部分的 Java 手机均支持 HTTP 方式进行通信的( MIDP 1.0 ),但支持 SOCKET 通信方式的 Java 手机较少 (MIDP 2.0)
    • 手机 CPU 频率及处理性能:相对于 PC CPU 的处理性能而言,目前手机 CPU 频率相对还是较低、处理性能也相对还弱,尚不适合完成较为复杂的计算处理,同时也不适合多线程、多进程的并发处理
    • 手机 RAM 、 ROM 、 Flash 内存:目前 RAM 、 ROM 、 Flash 还是相对较小,因此尚不适合进行较为消耗内存的计算处理,同时也不适合较大的应用数据存储。
    • 手机屏幕大小
    • 电池待机时间
    • 众多的手机机型适配问题
    • 手机操作系统的其他限制
  • 移动互联网开发问题 - 运营商限制
    • 运营商网络带宽:不管是 2G 、 3G 时代,运营商们所承诺的网络带宽始终是一种梦想
    • 流量资费:各运营商还是上网资费相对较贵
    • 运营商网络限制:例如 cmnet 、 cmwap 的防火墙限制(诸如同时并发的请求数限制、 socket 、 http 代理等)、移动白名单等等
    • 基站覆盖率
    • 运营商的开放程度:例如对 LBS
    • 政策因素:牌照、内容运营的风险等等
  • 移动互联网开发问题 - 软件开发
    • 服务器端高并发处理:在大用户量、高并发的情况下,服务器端如果处理速度较慢,也会导致与客户端交互过程的缓慢
    • 协议解析的方便性、可扩展性、性能
    • 网络连接不稳定
    • 用户体验问题
    • 通信安全、隐私问题
    • 支付问题
    • 云计算
    • 客户端安装推广问题
  • Wap 协议
    • WAP ( Wireless Application Protocol) 为无线应用协议,是一项全球性的网络通信协议。
    • WAP 目标是将 Internet 的丰富信息及先进的业务引入到移动电话等无线终端之中。 WAP 定义可通用的平台,把目前 Internet 网上 HTML 语言的信息转换成用 WML ( Wireless Markup Language) 描述的信息,显示在移动电话的显示屏上。 WAP 只要求移动电话和 WAP 代理服务器的支持,而不要求现有的移动通信网络协议做任何的改动,因而可以广泛地应用于 GSM 、 CDMA 、 TDMA 、 3G 等多种网络。
    • WAP 协议包括以下几种:
      • Wireless Application Environment ( WAE )
      • Wireless Session Layer ( WSL )
      • Wireless Transaction Layer ( WTP )
      • Wireless Transport Layer Security ( WTLS )
      • Wireless Transport Layer ( WDP )
  • WAP 1.x VS. WAP 2.x
    • WAP 2.0 采用与互联网采用完全通用的协议,可通过手机直接登录互联网,而基于 WAP 1.2 技术却只能登录 WAP 门户。同时 WAP2.0 特有的直接 HTTP 通信、移动友好技术、标记语言 XHTMLMP 以及对 WML1.0 的完全向后兼容等技术也使得 WAP2.0 能有更好的图形展现及控制能力;更容易针对不同的终端作出相应的内容优化;能够无线传送流媒体;使用缓存,业务处理速度更快;对大型文件的下载也更加迅速。
    • 从标记语言来说:
      • WAP 1.x 仅支持 wml, wmlscript 等 wap 规范中所要求的
      • WAP 2.x 要求支持绝大部分的标记语言( xHTML+WCSS )
    • 从技术实现来说 :
      • WAP 1.x 是通过 WAP GateWay 和服务器相联系的
      • WAP 2.x 是通过 TCP/IP ( http )和服务器联系
    • 从架构方面来说:
      • WAP 1.x 在 BROWSER 应用下面的承载方式是 WTP
      • WAP 2.x 在 BROWSER 应用下面的承载方式是 TCP
  • WAP VS. 手机客户端
    • WAP 的优势
      • 综合成本较低
      • 运营门槛低,业务部署快
      • 浏览器已预置,与终端无关,用户接受程度高,学习成本低。
      • 基本上就是 Web 服务器端开发,开发简单
    • WAP 的劣势
      • 承载的业务单一,承载的信息量有限
      • 交互能力差,个性化定制能力差,业务表现能力弱;
      • 价格承受空间小,二次营销成本高;
      • 用户交互体验不是很好
      • Wap 脚本功能有限,很多重要的功能无法通过 Wap 实现
    • 客户端的优点:
      • 承载的业务丰富,如 IM 、下载、阅读、流媒体、定位、二维码、网络游戏等,承载的信息量大
      • 交互能力强大,个性化定制能力强,用户体验丰富,可与终端本身的功能紧密结合
      • 用户对价格的承受空间大,二次营销成本低
      • 使应用的融合成为可能,从而出现为用户提供一站式服务的可能性
    • 客户端的缺点:
      • 综合成本较高
      • 运营门槛高,业务部署慢
      • 需要额外下载软件,且性能与终端紧密相关,用户接收程度较低,教育成本较高
      • 终端适配和升级很麻烦
  • CMWAP VS. CMNET
    • CMWAP : China Mobile WAP
    • CMNET : China Mobile Net
    • CMNET 和 CMWAP
      • CMNET 、 CMWAP 都是手机上网使用的接入点的名称。通过 CMNET 可以获得完全的 Internet 访问权,通过 CMWAP 只能访问 WAP 网站,不过 CMWAP 使用 HTTP 代理协议和 WAP 网关协议可以访问到 Internet ,而 CMNET 则适用于所有协议,它也是标准的 TCP/IP 协议。
      • CMWAP 和 CMNET 只是移动人为划分的两个 GPRS 接入方式。前者是为手机 WAP 上网而设立的,后者则主要是为 PC 、 笔记本电脑、 PDA 等利用 GPRS 上网服务。它们在实现方式上并没有任何差别,但因为定位不同,所以和 CMNET 相比, CMWAP 便有了部分限制,资费上也存在差别。
      • CMWAP 的端口为 80 和 8080 ( HTTP 代理), 9201 ( WAP 网关协议)。
    • 3G 时代后,目前中国移动大部分省份在 CMNET 、 CMWAP 的资费上已经相同,不再做区分。只不过由于针对 CMWAP 包月不限量的实际情况,对于一些针对低端消费者典型的 SP 业务还需要区分 CMNET 、 CMWAP
  • 手机客户端网络加速技术方案
    • 与固定互联网早期通过 163 、 169 拨号上网慢如蜗牛的时代类似,目前的手机客户端仍然面临类似的“低服务、低带宽、高资费、内容少” 情况,对于终端用户而言,每一个流动的 byte 都是白刷刷的银子,流量费用及网络速度成了使用客户端的众多用户必须逾越的心里障碍,怎样解决?
    • 网络加速基本原则:
      • 减少客户端与服务器端通信交互次数
      • 减少客户端与服务器端报文交互的字节数
      • 去除服务器端返回报文中无用的内容
      • 提升服务器端的响应时间
      • 提升客户端存取时间
      • 充分利用客户端缓存及服务器端缓存
      • 避免网络延迟
    • 实现方案模式:
      • 纯粹代理服务器( web proxy )模式
      • 代理服务器 + 内容预处理模式
      • 内容深加工 + 纯私有通信协议模式
  • 手机客户端网络加速技术方案
    • 方案实现技术
      • 降低图片分辨率
      • 服务器端静态文件内容压缩
      • 网络传输内容压缩
      • 去除网页无用元素
      • 精简自定义协议包,降低协议的字符数
      • 客户端本地缓存
      • 客户端预存取
      • 服务器端缓存
      • 避免 dns 延迟
      • 客户端并发存取服务器文件
      • 断点续传
      • 保持 TCP 长连接
  • UCWEB 的中转模式
    • 中转模式是指通过 UCWEB 服务器的解析处理: UCWEB 手机客户端通过 HTTP 的方式向 UCWEB 服务器发送访问请求 ( 包含访问页面 URL ,手机相关参数等 ) ,服务器对访问页面进行数据读取,获到页面信息后,再根据手机客户端的具体配置进行相应的数据解析、转换、压缩、重排,完成后再将处理过的数据传回给客户端,由手机客户端负责最终页面内容的显示以及提供人机交互。(摘自 ucweb 用户手册)
  • 手机客户端通信协议
    • 手机客户端开发通信协议选择
      • http+xml 方式
      • socket 通信报文方式
      • 业内标准通信协议方式(例如 syncml )
    • 选择标准
      • 协议定义清晰易懂
      • 协议扩展方便
      • 服务器及客户端协议解析的方便性
      • cmwap 、 cmnet 网络环境下处理一致性
      • 手机终端支持等因素的考虑
    • 一般采用 http+xml 报文作为通信协议, http+xml 方案的问题:
      • xml 报文的解析速度较慢,对手机 CPU 、内存的占用相对较高
      • 对服务器端而言, xml 报文方式相对来说解析速度也较慢,导致交互过程较慢,对服务器端处理性能要求也较高,尤其是在大用户量情况下
      • xml 报文冗余信息较多,传输数据量较大,从而导致更高的流量费用
  • 手机客户端通信协议
    • html+xml 协议的优化方案
      • xml 数据压缩
      • 定义 xml 报文时候精简报文
    • 可供选择的对 xml 数据压缩的方案包括:
      • Gzip ( Deflate )
      • wbXML
      • wbXML+ Gzip
      • ASN.1
      • ASN.1 + Gzip
      • XML Information Set
      • XML-binary Optimized Packages ( XOP )
      • XMill 、 Fast Web Services 、 XML Binary Infoset (XBIS) 、 bzip
  • 设备能力交换
    • 如果我们能够提升每一次请求 - 响应的传输性能,那么我们能够在更短的时间内提供客户端展现及业务处理所需要的数据,同时如果客户端充分发挥其计算能力很快完成数据的处理及展现,则对于加速客户端响应速度从而提升用户体验是大有益处的
    • OMA Data Synchronization 、 Device Management 定义的 Syncml 协议的 Device capabilities Exchange 实现机制是很值得借鉴的:
      • Syncml 协议的实现机制: SyncML 协议通过一个初始化设置可以使不同性能的客户端设备和服务器端进行信息的交换 . 任意一个设备 ( 客户端或服务端 ) 都能请求信息交换 , 只要客户端设备性能和服务端能协同工作 , 他们就能让一个同步会话继续下去 .
      • 有两种类型的信息在设备和服务器端进行交换 :
        • 设备信息 : 包括设备类型 , 数据模块和制造厂商信息。
        • 服务器信息 : 描述了客户端或服务器端支持的数据对象的特性 . 如果客户端支持 vCard version 2.1 数据格式和慢同步及双向同步 , 那么服务器就必须具有这样的能力 , 否则 , 同步就不能继续下去 .
  • 设备能力交换
    • 从客户端开发角度而言,对于客户端的能力我们主要关注如下一些方面:
      • 屏幕分辨率、屏幕亮度、电池电量
      • 机型信息:包括操作系统、 j2me 、 user_agent 、 wap push 、 streaming 、 wap 、 mms 、 sms 、 flash lite 、 camera 等支持情况
      • 网络信号强度
      • CPU 频率及处理性能
      • RAM 、 ROM 、 Flash 内存等
      • WLAN 支持
    • 获取了客户端的计算能力后,从网络加速角度,我们可以:
      • 确定数据分块传输的最佳大小
      • 确定数据分页显示每页最佳的条数
      • 确定客户端程序进程分配的内存、缓存大小
      • 确定选择最佳的网络连接方式,有 wi-fi 那肯定用 wi-fi
      • 确定最佳的压缩方式
      • 在信号弱的情况网络可靠传输机制处理
      • 确定是多线程并发处理机制
  • 手机客户端标识资源获取
    • 在无线互联网开发中,服务器端能够自动获取并识别用户的手机机型、手机浏览器型号、手机号码、 IMEI 号等几个关键参数,对于提升用户体验、简化用户交互操作以及进行所谓的精准式营销等具有很重要的意义。
    • 典型的应用场景:
      • 用户注册时候,可以直接联网注册,服务器端直接获取用户的手机号和机型,简化注册过程;
      • 用户下载客户端或其他软件资源时候不用手工选择厂商及机型;
      • 通过 wap 网关自动获取用户机型,通过 wap push 方式下发配置信息;
      • 用户浏览 wap 网页时候,能够自动根据用户屏幕大小进行适配,以得到最好的浏览效果
      • 根据用户的机型,自动推送相关的内容
  • 手机客户端标识资源获取
    • 从技术层面而言,目前自动获取用户手机机型 / 浏览器信息的方法:
      • 客户端获取:如果有自己的客户端,可以通过各手机操作系统提供的函数来获取操作系统信息,从而得到手机机型信息
      • 服务器端获取:从技术角度而言,在用户使用手机浏览器上网时候,在 http header 的 User-Agent 中携带了手机机型、浏览器型号的信息,因此实际上可以通过 User-Agent 来获取用户的机型信息。
    • 中国移动的白名单制度
      • 在中国特色的环境下,伟大的中国移动秉承与时俱进的河蟹理念,推出了所谓的“白名单”,只有在白名单中的 wap 服务器才能够获取用户相对完整的 User_Agent ,不在白名单中的,只能获取部分无关紧要的信息。即使是 cmnet 也有一些东西被阉割掉了。于是乎出现了专门以提供白名单服务( UA )为生的公司。
  • 用户手机号的获取
    • 手机的 SIM 卡上并不会存储手机号码信息,只会存储 IMSI ( International Mobile Subscriber Identification Number )。手机号码( MSISDN )都是登记在 HLR ( Home Location Register )中的,在 HLR 中会把 IMSI 和 MSISDN 关联在一起。
    • 客户端获取:
      • 在客户端对移动用户而言只能够获取诸如 IMSI 、 IMEI 号等,并不能直接获得手机号。
      • 电信 CDMA 机卡合一用户可以获取手机号码
    • 服务器端获取:
      • 在早期的移动白名单中是能够获得明文的手机号的,最近移动策略变了,手机号变成了天书般的唯一串号。因此目前从服务器端直接获取手机号也不行了。
      • 目前能够相对可靠地自动获取用户手机号的方法只有通过短信方式:让用户上行一条短信,通过短信网关获取用户手机号,从而将用户 id 与手机号绑定
  • 手机浏览器的 user_agent
    • 与 Web 浏览器类似,手机浏览器也携带了操作系统一些关键信息(没有被运营商阉割的情况下)
    • 例如:
    • Google‘s Nexus One running Android 2.2 (Froyo) :
    • Mozilla/5.0 (Linux; U; Android 2.2; en-us; Nexus One Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
    • Apple‘s iPad with mobile safari browser under OS 3.2 :
    • Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B367 Safari/531.21.10
    • 更多关于手机浏览器的 user agent id 可以参考: http://bit.ly/bETwOB
  • 手机机型适配
    • 由于市面上存在形形色色的手机型号,因此手机机型的适配是手机客户端开发中最麻烦的事情的挑战,尤其是对于 Symbian 、 J2ME 、 Window Mobile 、 MTK 平台
      • 要购买不同型号的测试机型, Money 啊!
      • 要一台一台做适配开发和测试,工作量啊!
    • 如果能够通过客户端或用户注册信息等其他途径获得用户的机型信息,可以自己维护一个相对完整的手机机型信息库来做适配操作,对于一般的公司而言,要完整维护一个完备的机型库基本上很难,好在还有很多无私奉献的人在为此做出贡献
    • WURFL : http://wurfl.sourceforge.net/
  • 当下移动互联网应用热点
    • App Store
      • Apple App Store
      • Android Market
      • 其他手机操作系统提供商、手机制造商及运营商的 App Store
    • LBS (位置服务)
      • Foursquare
      • Gowalla
    • 社交及媒体
      • Twitter 、 Facebook 、新浪微博
      • Flipboard
    • 手机游戏
    • 手机支付
  • 参考资料
    • 手机客户端网络加速技术方案实现思考 — 数据压缩技术
      • http://bit.ly/9MPP44
    • 手机客户端网络加速技术方案实现思考
      • http :// bit.ly/90eWFn
    • 手机客户端标识资源获取总结
      • http :// bit.ly/a6S0VC
    • 手机客户端网络加速技术方案实现思考 — 设备能力交换
      • http :// bit.ly/9tAIqw
  • 请提宝贵意见!