TelephonyManager与PhoneInterfaceManager应用

一 TelephonyManager

  TelephonyManager类主要提供了一系列用于访问与手机通讯相关的状态和信息的get方法。其中包括手机SIM的状态和信息、

电信网络的状态及手机用户的信息。在应用程序中可以使用这些get方法获取相关数据。

  TelephonyManager类的对象可以通过:Context.getSystemService(Context.TELEPHONY_SERVICE)方法来获得,

需要注意的是有些通讯信息的获取对应用程序的权限有一定的限制,在开发的时候需要为其添加相应的权限。

         TelephonyManager不是一个Framework层Service,属于Context中,对于每一个应用程序中都存在。

看一下TelephonyManager类结构:

    

看到是对三个Framework层的Service,远程代理对象完成对状态信息的获取。

二 PhoneInterfaceManager

         实现ITelephony接口,就是Framework层Telephony的相关接口,实现对Phone的控制操作。

这个类的实现确实在PhoneApp中完成,但是实现了远程调用,加入到

ServiceManager中。

    

PhoneInterfaceManager构造函数:

private PhoneInterfaceManager(PhoneApp app, Phone phone) {
        mApp = app;
        mPhone = phone;
        mCM = PhoneApp.getInstance().mCM;
        mMainThreadHandler = new MainThreadHandler();
        publish();
    }
private void publish() {
        ServiceManager.addService("phone", this);
}

 

TelephonyManager与 PhoneInterfaceManager应用:

  

 

来自:http://blog.163.com/my_ywj/blog/static/181203559201222384039340/

posted @ 2012-11-27 16:41  __Shadow  阅读(4554)  评论(0编辑  收藏  举报