android体系中的应用程序层本身就集成了打电话发短信的功能
/*发短信*/
class SendMsgClickListener implements OnClickListener {
public void onClick(View v) {
//调用Android系统API发送短信
Uri uri = Uri.parse("smsto:15800001234");
Intent intent = new Intent(Intent.ACTION_SENDTO, uri);
intent.putExtra("sms_body", "android...");
startActivity(intent);
}
}
/*打电话*/
class SendCallClickListener implements OnClickListener {
public void onClick(View v) {
//调用Android系统API打电话
Uri uri = Uri.parse("tel:15800001234");
Intent intent = new Intent(Intent.ACTION_CALL, uri);
startActivity(intent);
}
}
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.SEND_SMS"/>
上面都是调用系统的打电话和发短信的功能,那么能不能不调用系统功能而实现呢?
先看这样几个类,这是我最先看到的几个类:
TelephonyManager
SmsManager
SmsMessage
先了解点基础知识:GSM CDMA 属于现在我们在用的 2G网络,目前中国联通的WCDMA、中国电信的CDMA2000、中国移动的TD-SCDMA属3G网。
就科技成熟度来说WCDMA是世界各国的主流3G模式,联通的WCDMA有很强的兼容性,也就是说一旦联通开通了WCDMA我们的水货手机的3G功能就可以得到使用,TD是移动现在发展的一个网络中国自主品牌,要走的路很长,2000电信发展,也有一定基础,但不太看好,目前只有北美和韩日用这种3G模式。
CDMA和GSM有什么区别?
CDMA和GSM是2G通信的主流制式,从技术上来说,它们之间的区别就在于无线发送接收的制式不同,调制解调的方法不同。
对于用户来说,它们的不同在于:
1.通话质量。CDMA的通话质量要高于GSM,在相同环境下打电话,CDMA的杂音要比GSM小很多。
2.手机辐射。由于CDMA采用了出色的功率控制技术,因此CDMA手机的辐射要比GSM小很多。
3.高速数据上网。CDMA1x可以提供高达153.6kbps的上网速率,比GSMGPRS的20几k要快多了。
资费的话实际差不多,移动的全球通和联通的新时空差不多,移动的神州行和联通的如意行差不多,移动的动感地带和联通的UP新势力差不多。再解释以下CDMA内部的分类和GSM的分类。
GSM比较简单,先说GSM。所谓的GSM900/1800/1900是指GSM手机的工作频率,分别是中国移动支持的900MHz,1900MHz和美国常用的1900MHz。在国内用支持900MHz和1800MHz的GSM900/1800双频手机就可以了。如果要出国到美国用的,就要用支持1900MHz的三频手机了。
CDMA800,这是CDMA的工作频率。联通的CDMA是工作在800MHz下的。CDMA2000是目前2GCDMA的升级,是一种3G的标准。与目前的2GCDMA相比,CDMA2000更是能够提供几兆bps以上的数据速度。而CDMA1x是现在联通CDMA网络所采取的技术。它指的是CDMA20001x,也就是CDMA20001x的缩写。与真正的CDMA2000相比,CDMA1x就像我刚才说的,只能支持到153.6kbps的数据速度,因此被称为是2.5G的技术,还不是真正3G的技术。
GSM技术GSM是一种基于时分多址的第二代数字移动通信系统,最初的开发宗旨是促进欧盟内部电信服务的统一和一体化。
1987年,13个国家的电信主管部门签署了一项谅解备忘录,在整个欧洲地区采用GSM技术,目前已被世界各地广泛商用。GSM技术将音频信号分割为一定的数据序列,按照特定间隔将一定长度的数据放入信道,在信道末端重组序列;联通运营公司的GSM网络使用在900MHz频段上,并开始在若干城市部署1800MHz频段上运行GSM系统,以扩大现有网络容量。
联通运营公司已获准在900MHz频段上使用2x6MHz频谱,在1800MHz上使用2x10MHz频谱;CDMA技术CDMA是一种基于码分多址的第二代数字移动通信系统,它是以IS-95标准为基础的,CDMA开发组织负责协调世界范围内的CDMA的开发工作。此项标准已被包括香港、韩国、加拿大和美国在内的60多个国家和地区100多家运营商所采用。
CDMA1X在IS-95基础上升级改造,系统性能大为增强。与IS-95相比,CDMA1X具有数据传输速率高(最高速率可达153.6Kbps)的明显优势,可向用户提供移动互联网等多媒体业务。同时CDMA1X还具有系统容量大、与IS-95后向兼容、向3G平滑过渡等优势。目前已经在美国、日本和韩国拥有大量用户。
1999年3月,国务院批准联通集团采用CDMA技术建设运营移动通信网络。联通运营公司已获准在800MHz频段上使用2x10MHz频谱。
又仔细看了看,原来和打电话和发短信相关的几个包有这样几个,看下这几个包中的类:
android.telephony
android.telephony.cdma
android.telephony.gsm
这里有一篇分析的,暂留,我觉得他写的不是很清楚,不过有参考价值。
http://wuhua.iteye.com/blog/300264
未完,待续。。。