Time of Update: 2018-12-03
ANDROID應用效能最佳化之分析工具 上一次記錄瞭解決過度繪製的過程,這一次,想先弄清個概念性的東西,就是如何判斷順不順暢? 這東西其實最初我自己也覺得有點廢話,用起來會卡就明顯是不順暢咯。 但這東西就跟我很想吐槽很多應用一樣,明明那麼卡還放出來一樣的道理。理論永遠是理論,實踐才是第一生產力。 因為我自己的應用也能感覺到卡頓,現在回頭分析,能明白,卡頓永遠不是“用心的程式員”原本的初衷,但很多東西,真心是難言之隱。 知錯就改才是好人…所以要改,就要知道究竟錯在哪。 1、縱觀全域
Time of Update: 2018-12-03
修改#CC="$PREFIX/toolchains/arm-linux-androideabi-4.7/prebuilt/linux-x86/arm-linux-androideabi/bin/gcc"為CC="$PREFIX/toolchains/arm-linux-androideabi-4.7/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc"即可。參考http://www.cnblogs.com/pengwang/archive/2013/
Time of Update: 2018-12-03
如果你以前是用WM手機,現在換了個安卓的,那你面臨的首要問題就是如何把連絡人通訊錄導到新手機上。由於兩個系統不同,我們不能直接同步處理,只能藉助其它手段了。 現在網上的教程,大多數都是利用GMail,利用ActiveSync將WM手機的通訊錄同步到Outlook,然後匯出到檔案,再匯入到GMail,最後在手機上同步,過程比較繁瑣。沒有註冊GMail的使用者,專門為了匯入而註冊GMail似乎也沒必要。有些人出於某些原因不希望自己的連絡人存到GMail裡,這樣的話也得想其它招。 另外使用SIM卡匯入
Time of Update: 2018-12-03
這是學習Chronometer控制項做的一個小例子,貼上自己的代碼,與大家交流。 實現效果: 實現思路:使用Chronometer控制項實現計器的操作。通過設定setBase(long base)來設定初始時間,然後為其添加一個setOnChronometerTickListener(Chronometer.OnChronometerTickListener l)事件來判斷時間是否到了,然後再調用其stop()方法實現停止計時。實現代碼:main.xml:<?xml version="1
Time of Update: 2018-12-03
UCWEB現在基本上是手機上網的標配了。我最近在I9000上用UCWEB時遇到煩人的現象:每次啟動UCWEB時,它總是提示我建立案頭捷徑,而事實上我早就已經建立過了。總也搞不清楚原因,重複卸載安裝了好多次仍然如此,升級到最新的7.6版也一樣。上網查也有類似的投訴,但沒有解決方案。本想反編譯UCWEB來看看原因,但反編譯完一看,代碼全是混淆過的,看了半天也沒找到原因。然後猜想應該是設定檔出了問題,於是就用RE管理器進/data/data/com.uc.browser目錄,把檔案全刪除再重裝,結果故
Time of Update: 2018-12-03
原文:Posted by Foxykeep on 22/03/2012http://android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17在升級了我的Android SDK和ADT到版本17後,我又遇到了一個大問題:)在使用了第三方JAR包的工程中,我仍然能正常編譯,但只要在手機上一運行,程式就會直接崩潰,錯誤資訊如下:03-21 19:20:56.455: E/AndroidRuntime(24471)
Time of Update: 2018-12-03
初探Android平台上的定位服務(GPS) 特別聲明:以下所有操作都別忘記了加上許可權: <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission
Time of Update: 2018-12-03
關於Android程式的退出,目前我們沒有再用System.exit(0)或killProcess的機制而是直接用Activity.finish假退出了。因此在記憶體充足時,用進程工具會發現我們的程式退出後還在記憶體裡。上一篇文章中我也說了這是Android本身的記憶體管理和Activity生命週期的機制決定的,本來就是無可厚非的。但有人說這一來會有小白認為我們的程式老佔著後台不好,特別是用360什麼的能看到你的進程,看起來像流氓行為。另外我記得有人跟我說他測試過其它常用的程式如QQ都會自動結束
Time of Update: 2018-12-03
如需轉載引用請註明出處:http://blog.csdn.net/jiahui524 相信大家在使用很多的應用的時候都碰到過這樣的一個情景,那就是當我們第一次點擊使用這個應用的時候程式會主動的為我們建立一個案頭上的捷徑,這樣的好處是可以讓使用者更加方便的進入這個應用,省去找的麻煩。有句話曾經說,誰佔據了PC案頭用戶端誰就是王者,像QQ,360等都是。所以我們在做開發的時候肯定也會有用到這一點,那麼今天我就和大家分享實現的這樣的一個功能。其實不難,你只需要在你的應用程式啟動的第一個Activi
Time of Update: 2018-12-03
安卓和JAVA應用開發少不了要提交HTTP請求,而基本上目前有兩個實現方式:HttpUrlConnection(即URL.openConnection)和HttpClient。網上不少人都認為HttpClient更好,理由是功能更強,BUG更少,更容易控制細節。但我個人認為普通JAVA人員可選用HttpClient,安卓開發人員則應該使用HttpUrlConnection,理由如下:1.HttpClient是apache的開源實現,而HttpUrlConnection是安卓標準實現,安卓SDK雖
Time of Update: 2018-12-03
在上一篇文章(http://blog.csdn.net/jiahui524/article/details/7269738)中我曾經用重寫Dialog的方法來實現過對於分組資訊的一些實現。後來在我的文章下面的評論中有人告訴我可以用PopupWindow來實現分組。並且新浪微博用的就是這種方法。非常感謝網友songfantasy的提醒。於是乎,今天特再寫上一篇文章的續集,希望能幫到大家一些。廢話不多說!看效果,繼續我的風格,先,再上代碼,最終上原始碼!最終實現效果: 實現思路:在一個Popup
Time of Update: 2018-12-03
應用情境:在Android官方指出的Android的資料存放區方式總共有五種,分別是:Shared
Time of Update: 2018-12-03
搞Android開發有一段時間了,相信很多從Windows開發過來的Android程式員都習慣性地會跟我一樣遇到過同一個問題:如何徹底退出程式?這裡說下我自己的經驗,並不權威,僅供參考。 一開始我也上網到處找退出的資料,網上這方面的文章也是很多,總結下來退出Android程式的方法大概有以下幾種:1.直接調System.exit(0)或直接用android.os.Process.killProcess;2.調用ActivityManager.restartPackage或killBackgrou
Time of Update: 2018-12-03
最近有個同事跟我報怨說,他的系統重裝Eclipse使用新的ADT22後,編譯的android
Time of Update: 2018-12-03
最終: 實現SD卡檔案瀏覽器技術分析:主要用到的控制項:ListView如何填充這個ListView控制項,那麼就需要去遍曆整個SD卡下的所有檔案,如果遍曆的是檔案夾那麼先擷取該檔案夾的下的所有檔案,再把這個所有檔案填充到這個ListView裡就可以了,如此反覆就可以了如何擷取檔案夾或者檔案的修改日期?用java裡的File類只為我們提供了一個public long lastModified():表示檔案最後一次被修改的時間的 long 值,用與時間點(1970 年 1 月 1 日,00:00
Time of Update: 2018-12-03
Pull模式解析原理:與SAX解析器類比相似,也提供了類似的事件驅動.使用parser.next()可以進入下一個元素並觸發相應事件。事件將作為數值代碼被發送,因此可以使用一個switch對感興趣的事件進行處理。當元素開始解析時,調用parser.nextText()方法可以擷取下一個Text類型元素的值。Pull模式解析步驟:1、 得到一個XmlPullParser對象這裡得到XMLPullParser對象的方式有兩種:
Time of Update: 2018-12-03
應用情境:使用VideoView播放視頻簡單、方便,但除此之外,我們還可以利用MediaPlayer用來播放視頻。但是我們知道MediaPlayer主要用於播放音頻,它是沒有提供輸出映像的輸出介面,這時我們就用到了SurfaceView控制項,將它與MediaPlayer結合起來,就能達到了視頻的輸出了。首先來了SurfaceView這個控制項類SurfaceView類構造方法方法名稱描述public SurfaceView(Context
Time of Update: 2018-12-03
在實際開發中,我們時常要用到上方的兩個按鈕,通俗的我們可以叫做導航,等等.還是先看今天需要要實現的一個最的效果:其實實現這樣的效果有多種方式,今天我要給大家要介紹的就是如何的去定製自己的控制項,也就是自訂控制項,自訂控制項分為多種,有群組控制項,有重寫在原來已有的控制項上做基礎的修改,也有自己重寫寫一個類繼承於View對象,這方面的知識在實際開發當中也會常碰到,當然像我們這種菜鳥在這方面也是最欠缺的一個知識點,我希望通過我的一些講解或者分享能協助到大家吧。今天我給大家講的就是群組控制項的自訂,在
Time of Update: 2018-12-03
Button類結構圖:由類結構圖,可以看出Button是繼承於TextView的,所以TextView的一些屬性也適用於Button控制項。對於Button控制項,相信大多數開發人員是再熟悉不過了,那麼廢話不多說,直接應用實踐吧 實踐演練:1、 如何設定按鈕的樣式?通過Android:background設定 <Button android:id="@+id/myBtn1" android:text="按鈕1 設定背景樣式"
Time of Update: 2018-12-03
MediaPlayer類靜態構造方法方法名稱描述public static MediaPlayer create(Context context, Uri uri, SurfaceHolder holder)指定從資源ID對應的資源檔中來裝載音樂檔案,同時指定了SurfaceHolder對象並返回MediaPlyaer對象public static MediaPlayer create(Context context, int