1. 程式人生 > >【入門篇】ANDROID開發之BUG專講

【入門篇】ANDROID開發之BUG專講

world 自然 執行 類型 效率 str 積累 全部 href


話說諸葛亮是一個優秀的程序員,每個錦囊都是應對不同的case而編寫的。可是優秀的程序員也敵只是更優秀的bug。六出祈山。七進中原,鞠躬盡瘁,死而後已的諸葛亮僅僅由於有一個錯誤的case-馬謖,整個結構就被break了!

BUG真的是一個非常討人厭煩的東西。它總是在你以為自己已經戰勝它的時候跳出來嘲笑你。怎樣才幹拿下這些煩人的BUG呢?我想要從DEBUG開始。

這裏給剛剛接觸編程的新手們介紹一下Debug的方法。學會了這些方法後重復練習。當你積累了上萬的有效代碼量以後自然會發現你的水平將大大精進。

工具介紹

Android Studio:差點兒全部的編譯器都會帶上自己的DEBUG調試器。所以先來講講這個。我這裏就以Android studio為例,Android studio是谷歌推出的專門同來進行Android開發的軟件,因為針對性比eclipse強所以裏面集成了非常多插件個人認為比eclipse方便不少。如今多數安卓開發人員都在使用這款IDE了。

Android Studio自帶模擬器:簡單講Android不像C或者C++甚至是單純的Java編程。它從設計到編敲代碼到調試,都離不開手機。Android Studio自帶一款強大的模擬器。他能在電腦上模擬出一臺手機,假設你不考慮程序在真實設備上的兼容性,這款模擬器已經很棒了。一般程序在開發階段的須要都能用模擬器來滿足。

雲手機:模擬器也有缺點,它的效率比較低。而且程序在真機上的執行情況。遠比模擬器要復雜,所以開發人員的程序寫好後還須要用真機調試。

我不太不願意用自己手機調試,所以會用Testbird的雲手機,它們會在雲端提供好幾百款主流手機,你能夠直接用Android Studio等IDE。去遠程連接這些機器做調試,簡直就是為調試Android程序量身定做的,


感興趣的同學能夠百度或註冊使用,如今免費開放註冊

http://t.cn/R4jV3my

建立一個初始程序

首先在建立一個默認的空白project之後,我們先在project裏面加點兒東西,這樣我們才有東西可調。由於這篇文章是寫給新手們看的(調試都不會你敢自稱老手?),大家都知道Android編程裏很重要的一個概念就是MVC,MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫。

當中模型(model)大家能夠無論,由於這涉及到結構和數據類型,本例還涉及不到。

View能夠這麽概括——你在手機上所看見的都是view或者由view組成的。但這句話反過來是錯的。View並不都是可見的。至於controller控制器你能夠將其理解為你的控制邏輯。在Android studio默認project裏面本來是有一個TextView和一個信封樣的button,我們能夠對這個默認project作出例如以下改動:加入一個Button按鍵,在用戶按下該按鍵之前那個TextView顯示的內容為默認的“Hello world!

”。當用戶按下button以後該TextView變成“->按下的次數”。我把詳細步驟貼在這兒:

以Design形式打開content_main.xml,拖出一個Button控件,再進入content_main.xml的Text形式,在button裏面增加這樣一句話:android:onClick="Btn1_Click",然後進入MainActivity.java文件,依次增加以下的語句:

import android.widget.*; // 引入JAVA包

TextView textView;//創建一個TextView對象

Button button; // 創建一個button對象

int count = 0;

在onCreate()方法中加入例如以下語句:

button = (Button)findViewById(R.id.button);

textView = (TextView)findViewById(R.id.textView);//這兩句話將View和controller聯系了起來。也就是說你對手機上view的操作有了這兩句話才幹反映到你的控制邏輯也就是程序中來~

public void Btn1_Click(View view)//按鍵後要作出反映的函數。
{
String str = "---->" + count;
textView.setText(str);
count++;
}

然後執行程序就能夠了。按一下數字就會添加一個。這裏先上一張圖(我用的是雲手機。大家有條件的能夠用自己的手機或者模擬器):

技術分享

DEBUG的第一步,設置斷點

如今初始程序就算是完畢了,接下來說說調試,Android調試首先你得知道自己在哪兒打斷點,它不像C語言那樣僅僅有C文件在你想打哪兒打哪兒。Android主要有兩種形勢的文件,一種是.java文件一種是.xml文件。打斷點僅僅能打在.java文件中面,由於.java文件就是控制邏輯。而.xml文件大家能夠理解成視圖文件或者叫布局文件。程序走邏輯流程是永遠不會走到那兒的,就算到了也沒有不論什麽的意義。

打斷點的方式也很easy,僅僅是在某一行代碼前用鼠標左鍵點一下出現了紅圓點就表示打斷點成功了。例如以下圖:


技術分享

打點是使用DEBUG的第一步,那麽接下來就僅僅須要點擊run->debug”run”就能夠了。當你的程序執行到斷點所在的位置的時候程序就會自己主動暫停。例如以下圖:

技術分享

假設你是通過DEBUG執行程序手機也會有提示,大家能夠看看。

然後程序假設執行到斷點處你就會看見某行處於被選中的狀態。這個時候程序已經暫停了。

技術分享

這個時候你能夠選擇繼續執行到下一個斷點或者自己一步一步的跟蹤調試下去:

一步步調試(F8)

技術分享

直接執行到下一個斷點(F9)

技術分享

Debug的操作核心就僅僅有這簡單的三步:打斷點,通過DEBUG執行程序。按自己的須要選擇調試方式(調試途中也能夠打斷點)。

今天主要給大家簡單的介紹了一下Debug。是基本使用方式。下一節將為大家詳細解說DEBUG的使用方法和特性。

【入門篇】ANDROID開發之BUG專講