欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Android2.2快速入門(mén)

系統(tǒng) 2124 0

Android2.2快速入門(mén)

?

前言

  這是前段時(shí)間用于公司Android入門(mén)培訓(xùn)的資料,學(xué)習(xí)Android三周時(shí)間收集整理的,時(shí)間倉(cāng)促,希望能對(duì)像我這樣還沒(méi)入門(mén)就直接上項(xiàng)目的人一點(diǎn)幫助? :)

?

聲明

?

  歡迎轉(zhuǎn)載,但請(qǐng)保留文章原始出處:)

    博客園:http://www.cnblogs.com

    農(nóng)民伯伯: http://www.cnblogs.com/over140/

?

正文

一、 ???????????? 環(huán)境配置和安裝( Android2.2

參考文章: 這里

1.1 ???? JDK

1.2 ???? SDK

下載地址: http://dl.google.com/android/android-sdk_r06-windows.zip

1.3 ???? Eclipse 3.5 (Galileo)

下載地址:

  http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/R/eclipse-java-galileo-win32.zip

1.4 ???? ADT 0.9.7

下載地址: http://dl.google.com/android/ADT-0.9.7.zip

1.5 ???? 安裝

依次下載,按照文章步驟安裝即可,注意安裝 SDK 時(shí),需要如下設(shè)置下:

Android2.2快速入門(mén) ?

?

不然更新不下來(lái),那個(gè)鏈接地址被墻了。

?

?

二、 ???????????? Android 系統(tǒng)架構(gòu)

?

?   Android2.2快速入門(mén)

    2.1 ?? Linux 內(nèi)核 (Linux Kernel)

    * Android 運(yùn)行在 linux kernel 2.6 之上,但是把 linux 內(nèi)受 GNU 協(xié)議約束的部分做了取代,這樣在 Android 的程序可以用于商業(yè)目的。

    * Linux 內(nèi)核是硬件和軟件層之間的抽象層。 ??

    2.2 中間件

    * 中間件包括兩部分:核心庫(kù)和運(yùn)行時(shí) (libraries & Android runtime)

    * 核心庫(kù)包括, SurfaceManager 顯示系統(tǒng)管理庫(kù),負(fù)責(zé)把 2D 3D 內(nèi)容顯示到屏幕; Media Framework 媒體庫(kù),負(fù)責(zé)支持圖像,支持多種視頻和音頻的錄制和回放; SQlite 數(shù)據(jù)庫(kù),一個(gè)功能強(qiáng)大的輕量級(jí)嵌入式關(guān)系數(shù)據(jù)庫(kù); WebKit 瀏覽器引擎等。

    * Dalvik 虛擬機(jī):區(qū)別于 Java 虛擬機(jī)的是,每一個(gè) Android 應(yīng)用程序都在它自己的進(jìn)程中運(yùn)行,都有一個(gè)屬于自己的 Dalvik 虛擬機(jī),這一點(diǎn)可以讓系統(tǒng)在運(yùn)行時(shí)可以達(dá)到優(yōu)化,程序間的影響大大降低。 Dalvik 虛擬機(jī)并非運(yùn)行 Java 字節(jié)碼,而是運(yùn)行自己的字節(jié)碼。

  2.3 ?? 應(yīng)用程序框架 (Application Framework)

    * 豐富而又可擴(kuò)展性的視圖( Views ),可以用來(lái)構(gòu)建應(yīng)用程序, 它包括列表( lists ),網(wǎng)格( grids ), 文本框( text boxes ),按鈕( buttons ), 可嵌入的 web 瀏覽器。

    * 內(nèi)容提供者( Content Providers )使得應(yīng)用程序可以訪問(wèn)另一個(gè)應(yīng)用程序的數(shù)據(jù)(如聯(lián)系人數(shù)據(jù)庫(kù)), 或者共享它們自己的數(shù)據(jù)。

    * 資源管理器( Resource Manager )提供非代碼資源的訪問(wèn),如本地字符串,圖形,和布局文件( layoutfiles )。

    * 通知管理器( Notification Manager 使得應(yīng)用程序可以在狀態(tài)欄中顯示自定義的提示信息。

    * 活動(dòng)管理器( Activity Manager 用來(lái)管理應(yīng)用程序生命周期并提供常用的導(dǎo)航回退功能。

  2.4 ?? 應(yīng)用程序 (Applications)

??? * Android 系統(tǒng)會(huì)內(nèi)置一些應(yīng)用程序包包括 email 客戶(hù)端, SMS 短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程序等。所有的應(yīng)用程序都是使用 JAVA 語(yǔ)言編寫(xiě)的。

?

三、 ???????????? Android 系統(tǒng)包說(shuō)明

android.app :提供高層的程序模型、提供基本的運(yùn)行環(huán)境

android.content :包含各種的對(duì)設(shè)備上的數(shù)據(jù)進(jìn)行訪問(wèn)和發(fā)布的類(lèi)

android.database :通過(guò)內(nèi)容提供者瀏覽和操作數(shù)據(jù)庫(kù)

android.graphics :底層的圖形庫(kù),包含畫(huà)布,顏色過(guò)濾,點(diǎn),矩形,可以將他們直接繪制到屏幕上.

android.location :定位和相關(guān)服務(wù)的類(lèi)

android.media :提供一些類(lèi)管理多種音頻、視頻的媒體接口

android.net :提供幫助網(wǎng)絡(luò)訪問(wèn)的類(lèi),超過(guò)通常的Java.net.* 接口

android.os :提供了系統(tǒng)服務(wù)、消息傳輸、IPC 機(jī)制

android.opengl :提供OpenGL 的工具

android.provider :提供類(lèi)訪問(wèn)Android 的內(nèi)容提供者

android.telephony :提供與撥打電話(huà)相關(guān)的API 交互

android.view :提供基礎(chǔ)的用戶(hù)界面接口框架

android.util :涉及工具性的方法,例如時(shí)間日期的操作

android.webkit :默認(rèn)瀏覽器操作接口

android.widget :包含各種UI 元素(大部分是可見(jiàn)的)在應(yīng)用程序的屏幕中使用

?

四、 ???????????? Android 項(xiàng)目工程說(shuō)明

Android2.2快速入門(mén)

?

  src ??????? 存放 java 源代碼。

  gen ?????? 存放編譯器自動(dòng)生成的 java 代碼,這個(gè)目錄下的文件是系統(tǒng)自動(dòng)維護(hù)的。

  assets ? 存放在這個(gè)目錄下的文件,無(wú)論是 mp3 還是圖片,都會(huì)被打包到發(fā)布包中。

  res ????? 資源文件目錄,添加到這個(gè)目錄下的文件都會(huì)在 gen 下的 R.ava 文件中顯示出來(lái);如果 res 下存放的資源在應(yīng)用中沒(méi)有使用到,那么在 gen 下的 R.java 的文件中就不會(huì)顯示,那么打包的時(shí)候就不會(huì)將這部分資源打包,減少了應(yīng)用的發(fā)布文件大小。

  drawable :存放圖片文件,注意圖片名稱(chēng)必須是 [ a-z0-9_. ] 組成; drawable 目錄下不能分子級(jí)目錄,只能通過(guò)命名方法來(lái)加以區(qū)分。

  layout :存放與 UI 相關(guān)的布局文件,都是 xml 文件。

  raw ?????? 直接復(fù)制到設(shè)備中的任意文件,不會(huì)被編譯,可以放數(shù)據(jù)庫(kù)文件。

  values ? 存放字符串,顏色,數(shù)組等常量數(shù)據(jù)。可以任意命名,但是通常命名: color.xml strings.xml array.xml styles.xml dimens.xml( 定義尺寸值 :dimension value)

  xml ?????? 任意的 XML 文件,在運(yùn)行時(shí)可以通過(guò)調(diào)用 Resources.getXML() 讀取。

?

參見(jiàn) http://www.inandroid.cn/bbs/thread-1401-1-1.html

?

五、 ???????????? 基本控件

1 ????

2 ????

3 ????

4 ????

5 ????

5.1 ???? 文本框 (TextView) 、自動(dòng)完成 ( AutoCompleteTextView )

自動(dòng)完成的效果和代碼: http://android.yaohuiji.com/archives/390

5.2 ???? 編輯框 (EditText)

  android:hint ???? 內(nèi)容為空時(shí)提醒的信息,如“請(qǐng)輸入”

5.3 ???? 下拉列表 (Spinner)

  android:entries ??????? 可以通過(guò)在 strings.xml 中指定 string-array 來(lái)設(shè)置選項(xiàng)。

5.4 ???? 進(jìn)度條 (ProgressBar)

效果和代碼: http://www.eoeandroid.com/viewthread.php?tid=1081

5.5 ???? 拖動(dòng)條 (SeekBar)

5.6 ???? 評(píng)分條 (RatingBar)

?

?

5.7 ???? 按鈕 (Button) 、圖片按鈕 (ImageButton)

5.8 ???? 圖片框 (ImageView) 、畫(huà)廊 (Gallery)

畫(huà)廊效果: http://android.yaohuiji.com/archives/565

5.9 ???? 日期和時(shí)間 (DatePicker TimePicker)

5.10? 單項(xiàng)選擇 (RadioGroup RadioButton) 、多項(xiàng)選擇 (CheckBox)

5.11? 表格 (GridView) 、列表 (ListView)

  GridView http://blog.csdn.net/hellogv/archive/2009/09/18/4567095.aspx

  ListView http://www.cnblogs.com/allin/archive/2010/05/11/1732200.html

5.12? 對(duì)話(huà)框 ( AlertDialog ) 、對(duì)話(huà)框中的進(jìn)度條 (ProgressDialog)

  AlertDialog http://android.yaohuiji.com/archives/655

  ProgressDialog http://aina-hk55hk.iteye.com/blog/679134

5.13? 菜單 (Menu)

5.14? 提示 (Toast)

類(lèi)似于 MessageBox ,非模式窗口。如:

Toast.makeText(this, " 信息 ", Toast.LENGTH_SHORT).show();

?

六、 ???????????? 布局和容器

  6.1 ?? 幀布局 (FrameLayout)

放入其中的所有元素都被放置最左上的區(qū)域,無(wú)法為這些元素指定一個(gè)確切的位置。如果有多個(gè)子元素,那么后邊的子元素的顯示會(huì)重疊在前一個(gè)元素上。

  6.2 ?? 線(xiàn)性布局 (LinearLayout)

???????? 常用布局,子元素按行或列依次排列。

    android:layout_gravity 是本元素對(duì)父元素的重力方向。

    android:gravity 是本元素所有子元素的重力方向。

  6.3 ?? 絕對(duì)布局 (AbsoluteLayout)

可以讓子元素指定準(zhǔn)確的 x/y 坐標(biāo)值, (0, 0) 為左上角,沒(méi)有頁(yè)邊框,允許元素之間互相重疊。

  6.4 ?? 相對(duì)布局 (RelativeLayout)

???????? 允許子元素指定他們相對(duì)于其它元素或父元素的位置(通過(guò) ID 指定)

  6.5 ?? 表格布局 ( TableLayout )

將子元素的位置分配到行 (TableRow) 中,注意不會(huì)顯示邊框線(xiàn)也不能夠跨行合并單元格。

例子: http://hi.baidu.com/hoyah/blog/item/d9db34275d6f361a8b82a171.html

  6.6 ?? 選項(xiàng)卡 ( TabWidget)

?????? Android2.2快速入門(mén)

?????? 例子: http://fatkun.com/2010/06/android-tabwidget.html

?

七、 ???????????? 常用代碼

  7.1 ?? 在當(dāng)前 Activity 中啟動(dòng)另外一個(gè) Activity

???????? startActivity(new Intent(this, 目標(biāo) Activity.class));

?

  7.2 ?? 從當(dāng)前 ContentView 從查找控件

?     (Button)findViewById(R.id.btnAbout)

    R.id.btnAbout 指控件 id

?

  7.3 ?? 獲取屏幕寬高

DisplayMetrics dm = new DisplayMetrics();

// 獲取窗口屬性

getWindowManager().getDefaultDisplay().getMetrics(dm);

int screenWidth =?dm.widthPixels;//320

int screenHeight = dm.heightPixels;//480

?

  7.4 ?? 無(wú)標(biāo)題欄、全屏

// 無(wú)標(biāo)題欄

requestWindowFeature(Window.FEATURE_NO_TITLE);

// 全屏模式

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

WindowManager.LayoutParams.FLAG_FULLSCREEN);

注意在 setContentView() 之前調(diào)用,否則無(wú)效。

?

  7.5 ?? 注冊(cè) activity

???????? 所有用到的 Activity 都必須在 AndroidManifest.xml 中注冊(cè),否則會(huì)報(bào)空指針錯(cuò)誤。如: <activity android:name="com.common.TestView"> ,注意是包名 + 類(lèi)名。

?

八、 ???????????? Adb 命令行

  8.1 ?? DOS 進(jìn)入 android-sdk-windows\tools 目錄

  8.2 ?? Linux

登錄 linux 命令: adb shell

列出當(dāng)前文件 ls

刪除文件 rm 文件名

  8.3 ?? Sqlite

登錄 sqlite 命令: sqlite3

  8.4 ?? Adb 命令

列出當(dāng)前有哪些活動(dòng)的模擬器: adb devices

上傳文件: adb push

安裝 ap k文件:adb install android123.apk

?

九、 ???????????? Apk 文件破解

  9.1 ?? 獲取 apk 的資源圖片

???????? 直接用 WinRAR 打開(kāi), res/drawable 直接拖拽出來(lái)即可。

?

  9.2 ?? 獲取 xml 文件信息

??? 雖然能用 WinRAR 看到里面的 xml 文件,但是 xml 是經(jīng)過(guò)優(yōu)化的,無(wú)法直接查看,需要使用 apktool 工具,下載地址: https://code.google.com/p/android-apktool/

下載 apktool-1.3.1.tar.bz2 apktool-install-windows-2.2_r01-2.tar.bz2 解壓到同一個(gè)目錄,然后把待破解的 apk 文件拷貝到同一目錄, DOS 進(jìn)入該目錄,輸入: aapt d 91callinfo.apk 91callinfo ,這里第四個(gè)參數(shù)為破解完存放的路徑。

?

  9.3 ?? 反編譯 dex 獲取 Java 源代碼

???????? Apktool 工具只能反編譯成 smali 的中間代碼文件,這里需要借助另外一個(gè)開(kāi)源工具: dex2jar ,下載地址: http://code.google.com/p/dex2jar/ 。這個(gè)工具不能直接翻譯成 java 文件,但是可以把 dex 文件轉(zhuǎn)換成 jar 文件,然后可以通過(guò) jad 工具把 jar 文件反編譯成 Java 源文件,如果只是看看源碼的話(huà)可以用 jd-gui ,下載地址:

http://java.decompiler.free.fr/jd-gui/downloads/jd-gui-0.3.3.windows.zip

dex 文件 (classes.dex) 可以用 WinRAR apk 文件中解壓出來(lái)。

?

十、 ???????????? 小技巧

  10.1 ???????? 使用系統(tǒng)的圖標(biāo)

???????? 例如調(diào)用系統(tǒng)打電話(huà)的圖標(biāo):

<ImageView android:src="@android:drawable/ic_menu_call"

圖標(biāo)名稱(chēng)和效果 (Android1.5 1.6)

http://since2006.com/android/1.5-drawables.php

http://since2006.com/android/1.6-drawables.php

?

  10.2 ???????? 讓控件透明,如 ImageButton

???????? 設(shè)置 android:background="@null"

?

  10.3 ???????? layout 中直接指定 onclick 方法

???????? 不用手動(dòng)綁定,在 layout 中設(shè)置 android:onClick=”methodName” methodName 為對(duì)應(yīng) Activity 中的方法,如下格式: public void methodName (View view){} (適應(yīng) 1.6 以上版本)

?

  10.4 ???????? PC 鍵盤(pán)控制模擬器

PC 鍵盤(pán)

模擬器按鍵

說(shuō)明

Home

Home

主頁(yè)

F2

Menu

菜單

Esc

Back

后退

F3

Call

打電話(huà)

F4

Hangup

掛斷

F5

Search

搜索

Ctrl+F12

?

橫豎屏切換

?


  10.5 ???????? 進(jìn)入界面就顯示 / 隱藏軟鍵盤(pán)

???????? AndroidManifest.xml 中設(shè)置 activity

???????? android:windowSoftInputMode="stateHidden"

?

  10.6 ???????? 界面可視化布局工具

???????? 系統(tǒng)提供可視化布局并不好用,這里推薦一款,布局完后點(diǎn)生成代碼即可:

???????? DroidDraw http://www.droiddraw.org/

?

  10.7 ????????? Eclipse 中看 Android 的源碼

???????? 將源代碼拷貝至 android-sdk-windows\platforms\android-4\sources 下即可。注意源碼版本對(duì)應(yīng) android-4 文件夾,這里指 Android1.6 的源碼。

?

十一、 ????? Q & A

  11.1 ????????? 用模擬器調(diào)試頻繁連不上,或者報(bào) emulator-5554 disconnected 的錯(cuò)誤?

???????? ???????? Window( 窗口 ) -> Show Views( 顯示視圖 ) -> device -> view menu( 視圖菜單 )

-> Reset adb

?

  11.2 ????????? 匿名類(lèi)中如何使用 this

???????? classname( 類(lèi)名 ).this

?

  11.3 ????????? 程序出錯(cuò)后模擬器上僅顯示應(yīng)用程序遇到問(wèn)題將關(guān)閉怎么辦?

可以從 LogCat 中檢查錯(cuò)誤,默認(rèn) LogCat DDMS 視圖中,可以通過(guò)以下方法調(diào)整到 Java 視圖與控制臺(tái)并列顯示:點(diǎn)擊 Eclipse 左下角 ,點(diǎn)開(kāi)后在其他里面找到 Android 目錄下的 LogCat 拖拽出來(lái)即可。

Android2.2快速入門(mén)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 婷婷国产在线观看 | 欧美三级美国一级 | 男女做www免费高清视频 | 欧洲精品在线观看 | 国产成人精品日本亚洲麻豆 | 婷婷综合激情五月中文字幕 | 亚洲综合精品一区 | 久久中文字幕一区 | 日韩极品视频 | 天天插天天射天天干 | 亚洲综合日韩欧美一区二区三 | 日韩色视频 | 99这里只有精品 | 日本无卡无吗在线 | 成 性毛茸茸xx免费视频 | 久草在线草a免费线看 | 亚洲欧美日韩中文综合在线不卡 | 色综合网址| 日韩 欧美 国产 师生 制服 | 欧美日韩国产精品自在自线 | 国产不卡在线蜜 | 成人精品久久 | 丁香5月婷婷 | 欧美大片在线观看 | 成人毛片视频免费 | 成年在线视频免费视频观看 | 日韩欧美视频在线 | 欧美国产精品一区 | 国产免费av在线 | 一级毛片日本特黄97人人 | 成人精品国产 | 伊人久久艹 | 亚洲精品国产福利在线观看 | 五月久久亚洲七七综合中文网 | 九九久久国产精品 | 日本高清www午色夜黄 | 国产精品网址在线观看你懂的 | 亚洲高清国产品国语在线观看 | 国产福利小视频在线 | 小宝与康熙粤语 | 国产精品色 |