<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-348  評(píng)論-598  文章-0  trackbacks-0
    需要使用反射機(jī)制將ITelephony反射出來(lái)進(jìn)行操作。
    private void dial(String number) {
            Class
    <TelephonyManager> c = TelephonyManager.class;
            Method getITelephonyMethod 
    = null;
            
    try {
                getITelephonyMethod 
    = c.getDeclaredMethod("getITelephony",
                        (Class[]) 
    null);
                getITelephonyMethod.setAccessible(
    true);
            } 
    catch (SecurityException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (NoSuchMethodException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            }

            
    try {
                TelephonyManager tManager 
    = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
                Object iTelephony;
                iTelephony 
    = (Object) getITelephonyMethod.invoke(tManager,(Object[]) null);
                Method dial 
    = iTelephony.getClass().getDeclaredMethod("dial", String.class);
                dial.invoke(iTelephony, number);
            } 
    catch (IllegalArgumentException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (IllegalAccessException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (SecurityException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (NoSuchMethodException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (InvocationTargetException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        
        
    private void call(String number) {
            Class
    <TelephonyManager> c = TelephonyManager.class;
            Method getITelephonyMethod 
    = null;
            
    try {
                getITelephonyMethod 
    = c.getDeclaredMethod("getITelephony",
                        (Class[]) 
    null);
                getITelephonyMethod.setAccessible(
    true);
            } 
    catch (SecurityException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (NoSuchMethodException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            }

            
    try {
                TelephonyManager tManager 
    = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
                Object iTelephony;
                iTelephony 
    = (Object) getITelephonyMethod.invoke(tManager,(Object[]) null);
                Method dial 
    = iTelephony.getClass().getDeclaredMethod("call", String.class);
                dial.invoke(iTelephony, number);
            } 
    catch (IllegalArgumentException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (IllegalAccessException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (SecurityException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (NoSuchMethodException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            } 
    catch (InvocationTargetException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }


    ---------------------------------------------------------
    專注移動(dòng)開(kāi)發(fā)

    Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
    posted on 2011-01-25 14:38 TiGERTiAN 閱讀(9995) 評(píng)論(6)  編輯  收藏 所屬分類: Android

    評(píng)論:
    # re: Android彈出撥號(hào)界面和撥打電話實(shí)現(xiàn) 2012-04-04 11:12 | hello1719
    您好啊,我想問(wèn)一下,為什么我用這段代碼的時(shí)候,有兩句報(bào)錯(cuò)呢?如下所示

    iTelephony = (Object) getITelephonyMethod.invoke(tManager,(Object[]) null);
    dial.invoke(iTelephony, number);


    報(bào)錯(cuò)內(nèi)容是:Unhandled exception type InvocationTargetException

    您順便能把ITelephony.aidl 文件內(nèi)容發(fā)一下嗎?是不是我少添加了什么內(nèi)容呢?  回復(fù)  更多評(píng)論
      
    # re: Android彈出撥號(hào)界面和撥打電話實(shí)現(xiàn) 2012-04-04 18:23 | TiGERTiAN
    @hello1719
    跟AIDL沒(méi)啥關(guān)系吧,就是直接反射內(nèi)部類的內(nèi)部方法  回復(fù)  更多評(píng)論
      
    # re: Android彈出撥號(hào)界面和撥打電話實(shí)現(xiàn) 2012-04-06 10:19 | hello1719
    @TiGERTiAN
    嗯已經(jīng)解決了。。
      回復(fù)  更多評(píng)論
      
    # re: Android彈出撥號(hào)界面和撥打電話實(shí)現(xiàn) 2013-01-08 09:25 | xiaotang_hb
    請(qǐng)問(wèn)樓主,這里能改變,撥號(hào)界面和撥打界面嗎?顯示我的自定義界面UI?請(qǐng)教下,給我點(diǎn)思路。謝謝  回復(fù)  更多評(píng)論
      
    # re: Android彈出撥號(hào)界面和撥打電話實(shí)現(xiàn) 2016-03-08 16:45 | jaime
    請(qǐng)我dial和call方法有什么區(qū)別么?   回復(fù)  更多評(píng)論
      
    # re: Android彈出撥號(hào)界面和撥打電話實(shí)現(xiàn) 2016-03-09 10:44 | firetomato
    這找不到call是怎么回事?現(xiàn)在有別的方法實(shí)現(xiàn)這個(gè)功能嗎?  回復(fù)  更多評(píng)論
      
    主站蜘蛛池模板: 亚洲av无码潮喷在线观看| 免费一看一级毛片全播放| 蜜桃成人无码区免费视频网站 | 久久亚洲国产伦理| 亚洲成色在线综合网站| 亚洲AV无码乱码国产麻豆| 久久99国产亚洲精品观看| 久久精品国产精品亚洲毛片| 亚洲综合自拍成人| 亚洲成人午夜电影| 国产成+人+综合+亚洲专| 亚洲无码一区二区三区| 综合一区自拍亚洲综合图区| 看一级毛片免费观看视频| 九一在线完整视频免费观看| a毛片免费全部在线播放**| 久久青草91免费观看| 四虎成年永久免费网站| 成年男女男精品免费视频网站 | 中文字幕亚洲免费无线观看日本| 啦啦啦完整版免费视频在线观看 | 成年女人毛片免费播放视频m | 香蕉免费一区二区三区| 69xx免费观看视频| 成年女人18级毛片毛片免费观看| 日本一道综合久久aⅴ免费| 精品亚洲视频在线观看| 久久精品国产精品亚洲艾| 亚洲伦理一二三四| jizzjizz亚洲日本少妇| 精精国产www视频在线观看免费| 可以免费观看的毛片| 国产1024精品视频专区免费| 国产免费av片在线无码免费看| 亚洲偷自拍拍综合网| 亚洲黄色在线播放| 偷自拍亚洲视频在线观看99| 色播在线永久免费视频网站| 69式国产真人免费视频| 亚洲高清成人一区二区三区 | 全黄a免费一级毛片人人爱|