成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

闡述Android新增效果

移動開發 Android
在Activity中,新增了Touch Mode的接口,用以兼容在有觸摸屏的條件下提供更好的用戶體驗,不然會給開發人員增加很大的負擔。

谷歌的投在大獎賽的錢看來不會白花。對于所有做Android的人,所有一切都違背了一般的操作方式,還是那句,很酷,但需要時間的考驗,本僅供大家學習參考。

但讓我倍感孤獨的是,不知道是沒人做異步的ContentProvider訪問,還是這個類使用太過于弱智(這個使用方法可是我摸索了半天的啊,難道我真的如此的弱@_@),抑或是大家都各有高招,從SDK到網上,沒有任何關于該類的有點用的說明。

而我又恰巧悲傷的發現,這個類其實有很多的問題,比如他吃掉異常,有錯誤時只是簡單的返回null指針(這個其實不能怪他,你可以看看這里...);當你傳一個null的ContentResolver進去的時候,沒有任何異常,只是莫名其妙的丟棄所有消息,使你陷入苦苦的等待而不知其因;

更憤慨的是,他的Androidn傳遞竟然有Bug(難道還是我使用不對&_&),從startXX傳入的token,到onXXComplete里面一律變成1,而文檔上明明寫著兩個是一個東西(我的解決方法是用cookie做token,這個不會丟*_*)。不過我暫時還沒有遺棄它的打算,雖然沒人理睬,雖然有一堆問題,雖然我按圖索驥造了個新輪子,但為了節省剩下的一些無聊的工作,我決定茍且偷生了。

還是習慣性跑題了,其實,我是想通過我對這個類的無數次Debugger跟進,說說它的多線程異步處理的解決策略的。他的基本策略如下:
1. 當你實例化一個AsyncQueryHandler類時(包括其子類...),它會單件構造一個線程(后面會詳述...),這個線程里面會構建一個消息循環。
2. 獲得該消息循環的指針,用它做參數實例化另一個Handler類,該類為內部類。至此,就有了兩個線程,各自有一個Handler來處理消息。
3. 當調用onXXX的時候,在XXX函數內部會將請求封裝成一個內部的參數類,將其作為消息的參數,將此消息發送至另一個線程。
4. 在該線程的Handler中,接受該消息,并分析傳入的參數,用初始化時傳入的ContentResolver進行XXX操作,并返回Cursor或其他返回值。
5. 構造一個消息,將上述返回值以及其他相關內容綁定在該消息上,發送回主線程。
6. 主線程默認的AsyncQueryHandler類的handleMessage方法(可自定義,但由于都是內部類,基本沒有意義...)會分析該消息,并轉發給對應的onXXXComplete方法。
7. 用戶重寫的onXXXComplete方法開始工作。

這就是它偷偷摸摸做過的事情,基本還是很好理解的。我唯一好奇的是它的線程管理方式,我猜測他是用的單件模式。第一個AsyncQueryHandler的實例化會導致創建一個線程,從此該線程成為不死老處男。

所有ContentResolver相關的工作,都由該線程統一完成。個人覺得這種解決方式很贊。本來這個線程的生命周期就很難估量,并且,當你有一個ContentProvider的請求的時候,判斷你會做更多的類似操作并不過分。

就算錯了,花費的也只是一個不死的線程(與進程同生死共存亡...),換來的卻是簡單的生命周期管理和無數次線程生死開銷的節約。同時另外一個很重要的問題,他并會涉及到單件中數據同步的問題,每個類都有各自的Handler類,彼此互不干擾,分發可以分別進行。

當多個數據請求的時候,在同一個ContentResolver上進行的可能微乎其微,這就避免了堵塞。總而言之,這套解決辦法和Android的整體設計算是天作之合了。所以建議,如果你有什么非ContentProvider操作,卻需要異步多線程執行的話,模擬一套,是個不錯的策略,當然,具體情況具體分析,生搬硬套是學不好馬列主義的。

【編輯推薦】

  1. Android應用程序組建原理深入剖析
  2. Android SMS短信服務相關概念簡述
  3. PythonAndroid數據庫相關代碼解讀
  4. PythonAndroid安裝卸載程序具體操作方法解析
  5. Android應用程序的四個關鍵點
責任編輯:chenqingxiang 來源: csdn
相關推薦

2010-02-04 13:52:30

Android ap

2010-03-02 16:34:06

Android平臺

2010-03-02 14:15:11

Android平臺

2010-02-07 10:40:55

Android Int

2010-03-03 17:02:08

Android手機

2010-02-06 09:45:49

Android屬性

2010-02-06 16:11:33

Frame Layou

2010-03-04 09:54:24

Android開發

2009-11-30 13:26:25

Suse代理SQUID

2009-11-05 09:43:11

WCF好處

2009-12-09 14:15:39

2009-12-07 15:02:46

WCF學習

2010-02-03 17:37:30

Python語法

2010-03-10 14:48:24

2009-12-02 14:09:52

2009-12-14 10:47:34

Linux makef

2009-11-30 10:54:59

solaris命令

2009-12-01 09:51:50

備份Linux內核

2010-02-01 16:14:33

Python PySt

2010-09-07 12:46:08

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品美女www爽爽爽视频 | 久久久中文 | 午夜精品一区二区三区三上悠亚 | 日韩精品1区2区3区 国产精品国产成人国产三级 | 亚洲欧洲精品在线 | 99热.com| 国产成人a亚洲精品 | 91色在线 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | 亚洲一区二区在线播放 | 国产精品久久 | 日韩在线一区二区 | 仙人掌旅馆在线观看 | 亚洲精品性视频 | 亚洲大片 | 亚洲精品综合 | 色婷婷久久久久swag精品 | 夜久久| 午夜精品久久久久久久久久久久久 | 久久国产激情视频 | 国产精品视频一 | 国产91丝袜 | 日韩精品一区二区三区中文在线 | 久久久国产一区二区三区 | 亚洲精品久久久久中文字幕欢迎你 | 日日摸日日碰夜夜爽2015电影 | 国产国拍亚洲精品av | 粉色午夜视频 | 91av视频| 日韩精品视频在线免费观看 | 韩国成人在线视频 | 亚洲国产中文在线 | 欧美在线一区二区三区 | 成人在线不卡 | 国产精品久久久久久婷婷天堂 | 国产成人99久久亚洲综合精品 | 久久6视频 | 日韩精品一区二区三区中文在线 | 久草在线中文888 | 亚洲国产欧美在线 | 韩日在线视频 |