IntentService 與 Service的區(qū)別:(service(不是單獨進程和應用程序同進程)intentService(是一個處理異步請求類,專處理耗時任務))
service
- Service 是長期運行在后臺的應用程序組件 鞭盟。
- Service 不是一個單獨的進程侣监,它和應用程序在同一個進程中,
- Service 也不是一個線程,它和線程沒有任何關系,所以它不能直接處理耗時操作嗦锐。
- 如果直接把耗時操作放在 Service 的 onStartCommand() 中嫌松,很容易引起 ANR .如果有耗時操作就必須開啟一個單獨的線程來處理
IntentService
- IntentService 是繼承于 Service 并處理異步請求的一個類,在 IntentService 內(nèi)有一個工作線程來處理耗時操作奕污,
啟動 IntentService 的方式和啟動傳統(tǒng) Service 一樣萎羔,同時,當任務執(zhí)行完后碳默, IntentService 會自動停止 贾陷,而不需要我們?nèi)ナ謩涌刂啤?/li> - 另外,可以啟動 IntentService 多次嘱根,而每一個耗時操作會以工作隊列的方式在IntentService 的 onHandleIntent 回調(diào)方法中執(zhí)行髓废,
- 并且,每次只會執(zhí)行一個工作線程该抒,執(zhí)行完第一個再執(zhí)行第二個慌洪, 有序執(zhí)行
IntentService :使用場景——
(分析源碼得下面) - IntentService是繼承于Service并處理異步請求的一個類,在IntentService內(nèi)有一個工作線程來處理耗時操作凑保,
啟動IntentService的方式和啟動傳統(tǒng)Service一樣冈爹,同時,當任務執(zhí)行完后欧引,IntentService會自動停止频伤,而不需要我們?nèi)ナ謩涌刂啤?br> 另外,可以啟動IntentService多次维咸,而每一個耗時操作會以工作隊列的方式在IntentService的onHandleIntent回調(diào)方法中執(zhí)行剂买,并且,每次只會執(zhí)行一個工作線程癌蓖,執(zhí)行完第一個再執(zhí)行第二個瞬哼,以此類推。
IntentService與Service的不同:
(1)直接 創(chuàng)建一個默認的工作線程,該線程執(zhí)行所有的intent傳遞給onStartCommand()區(qū)別于應用程序的主線程租副。
(2)直接創(chuàng)建一個工作隊列,將一個意圖傳遞給你onHandleIntent()的實現(xiàn),所以我們就永遠不必擔心多線程坐慰。
(3)當請求完成后自己會調(diào)用stopSelf(),所以你就不用調(diào)用該方法了用僧。
(4)提供的默認實現(xiàn)onBind()返回null结胀,所以也不需要重寫這個方法。so easy啊
(5)提供了一個默認實現(xiàn)onStartCommand(),將意圖工作隊列,然后發(fā)送到你onHandleIntent()實現(xiàn)责循。真是太方便了
我們需要做的就是實現(xiàn)onHandlerIntent()方法糟港,還有一點就是經(jīng)常被遺忘的,構造函數(shù)是必需的院仿。
簡單說呢秸抚?第一速和,我們省去了在Service中手動開線程的麻煩,第二剥汤,當操作完成時颠放,我們不用手動停止Service
Http和Https的區(qū)別
http
- 明文傳輸
- 沒有驗證通訊雙發(fā)身份
- 無法保證數(shù)據(jù)完整性
https
- 經(jīng)由http通訊,利用SSL/TLS建立安全信道吭敢,加密數(shù)據(jù)包碰凶,https使用的主要目的是提供對網(wǎng)絡服務器的身份認證,同時保護交換數(shù)據(jù)的隱私和完整性
- Http + SSL = Https = Http + 身份認證 + 數(shù)據(jù)私密 + 數(shù)據(jù)完整性
- SSL(Secure Socket Layer) 并不是 Http 特有的鹿驼,所有應用層協(xié)議都可以使用 SSL 進行安全通信欲低。
- Http 直接跟 TCP 傳輸層交互,而 Https 多了一層 SSL 協(xié)議畜晰,正式這個協(xié)議讓 Https 有了數(shù)據(jù)加密伸头、身份認證的證書和數(shù)據(jù)完整性保護這些功能。SSL 是獨立于 HTTP 的協(xié)議舷蟀,所以不光是 HTTP 協(xié)議,其他運行在應用層的 SMTP 和 Telnet 等協(xié)議均可配合 SSL 協(xié)議使用面哼∫耙耍可以說 SSL 是當今世界上應用最為廣泛的網(wǎng)絡安全術。
socket和webSocekt的區(qū)別
- Socket 是傳輸層協(xié)議的具體軟件實現(xiàn)魔策,它封裝了協(xié)議底層的復雜實現(xiàn)方法
- 傳輸層協(xié)議有TCP/UDP兩種連接方式
- TCP三次握手四次揮手
- UDP是一種不可靠的傳輸機制匈子,但是他的數(shù)據(jù)報文比TCP的小,傳輸速度更快闯袒,他不需要事先建立連接虎敦,知道對方地址后直接將數(shù)據(jù)包扔過去,不保證對方能不能收到政敢。
- webSocket是一種升級版的Http服務傳統(tǒng)的http服務都是客戶端發(fā)起請求其徙,服務端響應數(shù)據(jù),但是webSocket支持服務器向客戶端主動推送消息