Android開發技術周報 Issue#34

教程

  1. Google Develop for Android 系列

    前幾天在G+上看到Google Developers站點,有一個Android系列的文章,分享到個人微博,周末閑來沒事就學寫了下,把它們簡單的翻譯了下,沒想到一發不可收拾,六篇文章全部都翻譯完了,有些地方省略了部分示例的描述或者換了另一種表述,如果有理解的不準確的地方,還望指正。

  2. Android內核開發:圖解Android系統的啟動過程

    學習任何軟硬件系統,研究系統啟動過程都是一種非常有效地起步手段,搞Android內核開發也不例外。網上有很多文章對Android啟動相關代碼進行分析和走讀,大家可以先搜索閱讀一下,我個人更喜歡更加直觀的方式去理解未知的東西,包括圖、表、系統輸出的log信息等等,因此,本文準備通過一些流程圖和log信息,來探索一下Android的啟動過程。

  3. Android優化筆記

    什么樣的應用才能稱得上是優雅的App?這是騰訊內部一直在思考的問題,優雅的App就是把簡單的事情做到極致,必須對終端應用性能進行打磨。在Android應用優化方面,主要包括內存和UI流暢度的問題,比如內存占用與泄露,UI流暢度的幀數和響應時間,IO的阻塞式響應時間等。

  4. Android 系統穩定性 - ANR(一)

    如果你是一個Android應用程序開發人員,你的人生中不可避免的三件事情是:死亡、繳稅和ANR。這么說是夸張了,但是由于Android本身的設計,以及應用程序和系統在開發過程中的缺陷,經常會在測試過程中遇到各種各樣的ANR問題。在功能性的測試中還少一些,主要是在壓力測試中(例如Monkey測試)會遇到非常多的ANR問題。

  5. Android 系統穩定性 - ANR(二)

    引起ANR問題的根本原因,總的來說可以歸納為兩類:1.應用進程自身引起的,例如:主線程阻塞、掛起、死循環,應用進程的其他線程的CPU占用率高,使得主線程無法搶占到CPU時間片其他進程間接引起的,例如:當前應用進程進行進程間通信請求其他進程,其他進程的操作長時間沒有反饋,其他進程的CPU占用率高,使得當前應用進程無法搶占到CPU時間片,分析ANR問題時,以上述可能的幾種原因為線索,通過分析各種日志信息,大多數情況下你就可以很容易找到問題所在了。

  6. Android 系統穩定性 - ANR(三)

    Android應用程序的所有標準組件全部運行在一個單一的主線程中,在主線程中所做的任何耗時的操作都有可能造成ANR,因為這些耗時的操作會使得主線程沒有機會處理用戶輸入事件或者廣播事件。因此在主線程中執行的任何函數所做的工作都應該盡可能的少,特別是對于Activity的生命周期函數來說。網絡和數據庫操作,以及諸如位圖變換的一些耗時的操作,都應該放在子線程中完成。主線程不需要等待子線程的執行,主線程應該創建一個與其綁定的Handler對象,子線程執行完畢后通過Handler通知主線程。

  7. Android Design Support Library使用詳解

    Google在2015的IO大會上,給我們帶來了更加詳細的Material Design設計規范,同時,也給我們帶來了全新的Android Design Support Library,在這個support庫里面,Google給我們提供了更加規范的MD設計風格的控件。最重要的是,Android Design Support Library的兼容性更廣,直接可以向下兼容到Android 2.2。這不得不說是一個良心之作。

  8. 程序猿必看交互設計

    本文作者 Pasquale D'Silva 是 Elepath 的一位交互設計師兼產品設計師,在本文中,他從交互的角度闡釋了優秀的設計應該具有的一些品質,或者說,優秀的產品該如何實現與用戶的自然溝通。不得不說,有太多程序猿或者美工(注意,是美工,真正的設計師不會這么干)誤把技術當藝術、把漂亮當設計了,真正重要的交互部分反而被忽略,你可以看看,一大批的產品都是近乎靜態的,許多操作詭異至極.

  9. 完全掌握Android Data Binding

    本教程是跟著 Data Binding Guide 學習過程中得出的一些實踐經驗,同時修改了官方教程的一些錯誤,每一個知識點都有對應的源碼,爭取做到實踐與理論相結合。Data Binding 解決了 Android UI 編程中的一個痛點,官方原生支持 MVVM 模型可以讓我們在不改變既有代碼框架的前提下,非常容易地使用這些新特性。其實在此之前,已經有些第三方的框架(RoboAndroid) 可以支持 MVVM 模型,無耐由于框架的侵入性太強,導致一直沒有流行起來。

  10. 防御性編程與瘋狂偏執性編程

    當程序員遇到意想不到又不能修復的bug時,,他們會“添加一些防御性的代碼”,這不但可以使得代碼更安全,還更容易發現問題。有時候這樣的行為甚至可以直接消滅問題。開發人員還會進行數據驗證——確保檢查輸入和輸出域和返回值;審查和改進錯誤處理——可能會圍繞一些“不可能”的條件做一些檢查;添加一些有用的日志記錄和診斷。換句話說,問題代碼優先。

代碼&開源庫

  1. FABProgressCircle

    圍繞 FloatingActionButton 的圓形進度條效果。

  2. bottomsheet

    Android component which presents a dismissible view from the bottom of the screen.

  3. AppIntro

    可以讓你在自己的App里實現很Cool的引導頁效果的庫.

  4. Nammu

    運行時權限檢查助手.

  5. ColorPhrase

    一個可以根據指定分隔符字符串包含的文本格式化為指定顏色的Library.

  6. colorize

    Android quick access to 1000+ preloaded colors! 一個可以讓你快速使用1000多個預置顏色的庫。

  7. WheelIndicatorView?
    模仿 Google Fit 的活動指示進度效果.

  8. EdittextWithTag

    可以將輸入EditText的內容自動轉換為一個Tag效果。

  9. PopSeekbar

    一個漂亮的自定義SeekBar。

  10. Cult

    Cult提供一個新的工具欄布局,可以讓你使用一個自定義的SearchView動畫等等。

  11. WaveCompat

    Activity 波紋動畫效果兼容庫.

  12. CircleTimerView

    效果很贊的圓形計時器View.

  13. PlayAnimations

    PlayGames app中各種動畫效果的demo。

  14. ParallaxSplash

    視差動畫的引導頁.

工具

  1. Android Studio 1.2.2

  2. ormlite-android-gradle-plugin

    一個可以幫助你生成 ORMLite 的配置文件的 Android Studio 插件。

新聞

  1. 谷歌推出智能密碼鎖

    谷歌在I/O 2015大會上宣布了“谷歌身份平臺(Google Identity Platform)”,這是一個跨Android、iOS和Web應用程序管理身份以及處理身份驗證與授權的工具和API 集合。除了大家熟悉的Sign-in,為了使用戶能夠使用他們的谷歌賬戶登錄,谷歌推出了“智能密碼鎖(Smart Lock for Passwords)”,目前只能用在Android上,以后也可能擴展到iOS。

視頻

  1. Android Performance Patterns系列視頻

    Google官方推出的一系列幫助你優化Android App性能視頻,@hi大頭鬼hi 同學把它們全部搬到了墻內,還沒看的小伙伴趕緊去看看吧。

  1. Producter

    一本涵蓋 設計,交互,動效,iOS開發,Swift,營銷的跨界作品 — 《Producter》。一本很不錯的書,推薦大家看一下。獨立完成一款產品是很多人的夢想,也是我的夢想,但是單單完成一個作品并沒有什么價值,真正完成一款優秀的作品的難度遠超過了 “完成” 這個詞語。設計上的錘煉,編程技藝的精進,營銷的思考,讓很多人都在起步階段就放棄了。從來沒有一本書,去講如何完整的完成這件事情。

設計

資源

  1. TO-DO APP UI KIT

    一個TO-DO APP UI全套設計資源,可以免費下載和使用,包含Photoshop和Sketch雙版本。

教程

    1. 免費了,切圖標記外掛神器 Assistor PS 深入解讀(上)

      與其他切圖標記軟件不同的是,Assistor PS 是完全獨立于 PS 本身的,說是一個外掛更加合適,旨在提高切圖標記的效率及速度。雖然不是一個插件,但是它與 PS 是連通的,當你在 PS 選擇一個圖層在后,即可使用它的功能。如果你肯花點時間下載是試用,相信不會讓你失望,甚至能可能讓你覺得相見恨晚。

    2. 免費了,切圖標記外掛神器 Assistor PS 深入解讀(下)

      在 切圖標記外掛 Assistor PS 深入解讀(上)中,我給大家介紹了即將免費的切圖標記外掛 Assistor PS 強大的標記功能,然后,這個神器的功能僅僅如此?本文將為介紹 Assistor PS 其他喪心病狂的功能:創建引導框,一鍵全自動切圖,創建參考線,單位轉換器,取色器,圓角矩形轉換,按照固定間隔復制圖層等。

轉載于:https://www.cnblogs.com/stewartlj/p/5684749.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/372643.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/372643.shtml
英文地址,請注明出處:http://en.pswp.cn/news/372643.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

php進度條插件,分享8款優秀的 jQuery 加載動畫和進度條插件_jquery

加載動畫和進度條在網站和 Web 應用中的使用非常流行。雖然網速越來越快,但是我們的網站越來越復雜,同時用戶對網站的使用體驗的要求也越來越高。在內容加載緩慢的時候,使用時尚的加載動畫和進度條告訴用戶還有內容正在加載是一種非常好的方式…

卷積神經網絡(CNN)與特殊的卷積

各種卷積操作的可視化的顯示形式:GitHub - vdumoulin/conv_arithmetic: A technical report on convolution arithmetic in the context of deep learning1. fractionally-strided 卷積 如上圖示,輸入為 33 ,想要卷積上采樣成 55 的輸出。需要…

JBoss AS 7:自定義登錄模塊

JBoss AS 7很整潔,但是仍然缺少文檔(錯誤消息沒有那么有用)。 這篇文章總結了如何創建自己的兼容JavaEE的登錄模塊,以對部署在JBoss AS上的Web應用程序的用戶進行身份驗證。 提供了一個工作的基本用戶名密碼模塊。 為什么要使用Ja…

MySQL安裝步驟及相關問題解決

1. 下載MySQL Server,網址:http://dev.mysql.com/downloads/mysql/ 2. 點擊MySQL5.5.21的安裝文件,出現安裝向導界面,單擊“next”繼續安裝: 3. 選擇接受協議,單擊“next”繼續安裝: 4. 在出現選…

matlab的數學函數,matlab中常見數學函數的使用

matlab中常見數學函數的使用 MATLAB 基本知識 Matlab 的內部常數 pi 圓周率 exp(1) 自然對數的底數 e i 或 j 虛數單位 Inf 或 inf 無窮大 Matlab 的常用內部數學函數 指數函數 exp(x) 以 e 為底數 log(x) 自然對數,即以 e 為底數的對數 log10(x) 常用對數&#xff…

C++中 list與vector的區別

C中 list與vector的區別 引用http://www.cnblogs.com/shijingjing07/p/5587719.html C vector和list的區別 1.vector數據結構vector和數組類似,擁有一段連續的內存空間,并且起始地址不變。因此能高效的進行隨機存取,時間復雜度為o(1);但因為內…

使用Struts 2的查詢網格(無插件)

當將jQuery與struts 2一起使用時,開發人員被說服使用struts2-jQuery插件 。 因為大多數論壇和其他Internet資源都支持struts2 jQuery插件。我有這種經驗。 我想將Struts 2使用jQuery Grid插件,但不使用struts2 jQuery插件。 對于我而言,很難找…

php reflectionmethod,PHP ReflectionMethod getClosure()用法及代碼示例

ReflectionMethod::getClosure()函數是PHP中的一個內置函數,用于為該方法返回動態創建的閉包,否則,在出現錯誤的情況下返回NULL。用法:Closure ReflectionMethod::getClosure ( $object )參數:該函數接受參數對象,該參…

java學習筆記--IO流

第十二章大綱: I/O input/output 輸入/輸出 一、創建文件,借助File類來實現 file.createNewFile() : 創建文件 file.exists() : 判斷文件是否存在,如果存在,則返回true delete() : 刪除文件&…

linux命令之kill篇

作業四:查詢firewall進程,然后殺死 [rootlocalhost 桌面]# ps -aux |grep firewall root 772 0.0 2.0 327912 20704 ? Ssl 15:23 0:00 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid root 5323 0.0 0.0 112660…

ActiveMQ網絡連接器

這篇文章對我和任何對網絡連接器如何為ActiveMQ工作感興趣的ActiveMQ貢獻者而言都是更多的內容。 我最近花了一些時間查看代碼,并認為最好畫一些快速的圖表來幫助我記住我學到的東西,并在將來發現問題時幫助將來確定在哪里進行調試。 如果我輸入有誤&…

《程序設計與數據結構》第3周學習總結

學號 20162317 《程序設計與數據結構》第3周學習總結 教材學習內容總結 第三章的內容相比之前兩章更為具體,介紹的內容更為集中,主要說到了類和對象的問題,其中也仔細介紹了String類、Random類、Math類、NumberFormat類等類。此外也說到了與類…

Java中帶有JWebSocket的WebServerSocket

首先&#xff0c;轉到http://jwebsocket.org/下載2個軟件包Server and Client。 如果要查看源代碼&#xff0c;請下載源代碼包。 服務器 解壓縮服務器程序包。 轉到“ conf”文件夾 選擇“ jWebSocket.xml”文件打開 編輯“ jWebSocket.xml”文件&#xff0c;在標簽<dom…

OpenCV入門指南----人臉檢測

本篇介紹圖像處理與模式識別中最熱門的一個領域——人臉檢測&#xff08;人臉識別&#xff09;。人臉檢測可以說是學術界的寵兒&#xff0c;在不少EI&#xff0c;SCI高級別論文都能看到它的身影。甚至很多高校學生的畢業設計都會涉及到人臉檢測。當然人臉檢測的巨大實用價值也讓…

matlab提取艾里斑,艾里斑:我不是雀斑

正是艾里斑&#xff0c;限制了光學儀器的精度我們知道凸透鏡能把入射光會聚到它的焦點上&#xff0c;由于透鏡的口徑有一定大小&#xff0c;限制了光線的傳播&#xff0c;所以凸透鏡也會發生衍射。這導致透鏡無法把光線會聚成無限小的點&#xff0c;而只會在焦點上形成具有一定…

mysql啟動錯誤排查-無法申請足夠內存

一般情況下mysql的啟動錯誤還是很容易排查的&#xff0c;但是今天我們就來說一下不一般的情況。拿到一臺服務器&#xff0c;安裝完mysql后進行啟動&#xff0c;啟動錯誤如下&#xff1a; 有同學會說&#xff0c;哥們兒你是不是buffer pool設置太大了&#xff0c;設置了96G內存。…

Spring vs Guice:重要的一個關鍵區別

根據彈簧對象的名稱識別它們 不管使用XML還是Java配置都沒有關系&#xff0c;Spring范圍大致類似于Map <String&#xff0c;Object>結構。 這意味著您不能有兩個名稱相同的對象 。 為什么這是一件壞事&#xff1f; 如果您的大型應用程序包含許多Configuration類或XML文件…

php 批量更新死鎖,php – 在嘗試獲取鎖定時,哪個查詢導致死鎖;嘗試重新啟動事務...

我無法弄清楚哪個Query在嘗試獲取鎖定時導致死鎖;嘗試重新啟動事務.我的mysql包裝器有以下幾行if (mysql_errno($this->conn) 1213) {$this->bug_log(0,"Deadlock. SQL:".$this->sql);}bug_log寫入文件的位置.錯誤日志文件沒有死鎖錯誤,但/var/log/mysqld.…

Task和BackTask

一、總結性知識點&#xff1a; 1、Android應用運行時會創建任務Task&#xff0c;用于存放主窗口2、每一個任務包含一個堆棧數據結構&#xff0c;用于保存當前應用已創建的窗口對象&#xff0c;這個堆棧即回退棧BackStack3&#xff64; 位于回退棧頂的窗口會處于焦點狀態4&#…

Java面試題二

1、public、private、protected、Friendly的區別與作用域 public,protected,friendly,private的訪問權限如下&#xff1a; 關鍵字 當前類 包內 子孫類 包外 public √ √ √ √ protected…