您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關Android中的Call類型有哪些,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
call就是平時我們常用的通話功能,最基本的就是來電incoming call,撥打電話outgoing call,掛斷電話hangupcall,一般來說撥打一方成為主叫方,接聽方為被叫方。Call模塊常用的一些名詞有:
1. dialing call
撥打一路電話,對方尚未接聽,主叫方等待被交接聽的時候的狀態即為dialing狀態
2. active call
激活通話:雙方正在進行的正常的通話
3. hold call
保持通話:即將當前通話掛起,雙方不管主叫還是被叫方都聽不到對方的聲音
4. mute call
靜音:靜音后對方聽不到靜音發起方的聲音,但是靜音發起方能聽到對方的聲音
5. waiting call
正在通話過程中,第三方電話撥打進來,第三方對于當前正在通話的用戶來講就是waiting call等待接進來的電話
6. end all
結束通話
7. Auto redial
自動重撥:此項功能一般在call setting當中會讓用戶選擇打開或是關閉,如果打開,則設備首次呼叫失敗后,一般會自動再次撥打該號碼,一般可自動重撥7次,也有可能更多,且前兩次自動重撥的間隔時間較短,后面幾次則較長
8. Quick dial
快速撥號:即在call setting中設置一個按鍵(一般為數字鍵)的對應一個常用的號碼,在idle界面長按該按鍵就可顯示出該號碼,并且可以正常撥打出去
9. Answer mode:
應答模式:是用戶對來電的接聽方式,默認情況下一般按接聽鍵可以接聽。在call setting中一般會有此選項,用戶可以自由選擇。
a.自動應答:一般響鈴5秒鐘左右,電話自動接通
b.按任意鍵應答:除掛斷鍵和power鍵之外的任意鍵可接聽來電
10. call waiting
呼叫等待:此項功能需要運營商支持并開通,一般卡都支持此項功能并且運營商默認開通,一般手機在call setting里面會有一項打開或關閉此項功能的選項,用戶可以自由選擇。如用戶設置了呼叫等待,則可實現在通話時,若有第三方呼入,會有提示音和提示畫面,此時可以選擇接聽,拒絕或是忽略該呼叫。如果選擇接聽第三方來電,則原通話將會被保持而不會被掛斷,當然也可以選擇接聽并掛斷原通話。如果拒絕,則會掛斷第三方通話,原通話不受影響。
11. call forwarding
呼叫轉移:呼叫轉移是將來電轉接到其他電話上的一種功能,需要運營商支持和開通,并非所有SIM/USIM卡都有此項功能,轉移的號碼可以是手機號碼也可以是固定電話號碼,具體包括:
a.無條件轉移:即任意來電都將被轉移到設置好的好馬上去
b.無應答轉移:若來電無應答,一段時間(由網絡段決定這個時間段的長短,一般是25秒左右)后,電話將被轉移到設置好的電話號碼上去
c.無法接通轉移:無電話無法接通(比如關機,無信號等)時,電話將被轉移到設置好的電話號碼上去
d.占線中轉移:若電話正在通話中,再呼入一路電話,這路電話將被轉移到設置好的電話號碼上去
12. call barring
呼叫限制:呼叫限制是對呼出或來電認為做出一些限制,以限制電話的呼出或者呼入。此功能并非所有的SIM/USIM卡都支持,據我了解,目前只有開通了國際通話功能的中國移動旗下的全球通卡支持此項功能。具體包括:
a.所有呼出:手機將無法呼出任何電話,一般會有呼叫被限制的提示
b.所有來電:手機將不能接入任何來電
c.所有國際呼出:不能撥打任何境外電話
d.所有國際來電:任何國際來電將不能被接入
e.僅限本地呼入呼出:所有本地呼入呼出將被禁止
13. multi-party
多方通話(并非所有的卡都支持此功能):多方通話的前提條件是此卡必須支持呼叫等待并且呼叫等待功能必須開啟。
當在通話過程中,再來一路通話,此時將第三方電話接起后形成多方通話,此時原來的那路通話被掛起(即在保持hold狀態),此時這路被保持的通話將聽不到這邊的任何聲音,新來的電話被接進來即為激活狀態,保持和激活狀態可以互相切換。所以一般多方通話會有一個菜單選項里面包含:靜音,保持/激活,加入會議通話,掛斷當前,掛斷保持等跟call相關的選項
多方通話當中還包含會議通話:當存在多方通話時可選擇加入電話會議,加入電話會議的各方均能互相聽到彼此間的聲音,可進行多方會談。電話會議的菜單選項一般包括:加入/退出電話會議(選擇任意一個成員),靜音,電話會議成員列表,掛斷全部,掛斷某一路程遠等,若掛斷全部,則會逐一出現每個電話的掛斷界面,電話會議的時間以最早建立的時間為準。多方通話包括會議通話最大支持七路通話,電話會議也有人數限制,運營商不同最大人數也不同,當達到最大限制時將無法加入電話會議。
14.Call的處理狀態
一個phone有且僅有三個call,分別是RingCall,ForgroundCall以及BackgroundCall,可以簡單的理解為每個call對應四種狀態(此處暫不去關心三種Call之間的狀態區別)Ring, Active, Hold,Idle,同一時刻三個Call只能有一個Ring狀態(RingCall), 一個Active狀態(ForgroundCall), 一個Hold狀態(BackgroundCall),可以同時有三個Idle狀態。所以涉及到Call不同狀態間如何切換的問題。
Android 中對單卡情況的處理:
a.當有Ring call時,不允許hold和active切換;
b.既有Ring call,又有Hold call時,掛斷Ring call會連帶Hold call一起掛斷。
c.同時有Active call和Hold call,掛斷時先掛Active call再掛Hold call
其實在我們的代碼中,確切的來說不是Call而是connection的概念。RingCall只能建立一路connection,而ForgroundCall和BackgroundCall則可以同時建立多路connection,尤其是又多方通話或者是會議通話的時候,三種狀態最多可同時建立七路connection。
關于Android中的Call類型有哪些就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。