黑馬程序員 android App

---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Unity開發</a>、<a href="http://edu.csdn.net"target="blank">.Net培訓</a>、期待與您交流! ----------------------

Android平臺架構及特性

         --底層Linux操作系統

         --中間層的中間件

         --上層的Java應用程序

 

Android核心組件

         -沒有統一的main()入口 四類核心組件

                   --Activity

                            ---單獨的屏幕 單獨的類 繼承於Activity類

                            ---由View控件組成的用戶接口 通過調用startActivity()方法實現屏幕跳躍

                            ---打開Activity的條件被封裝在Intent中

                   --Services

                            ---長生命週期的 沒有用戶界面的程序

                            ---代表程序:媒體播放器

                            ---Context.startService()  Context.bindService()


                   --Broadcast Receiver

                            ---實現系統廣播而提供的一種組件

                            ---發出廣播來檢測手機電量的變化 定義一個BroadcastReceiver來接收廣播

                   --ContentProvider

                            ---實現不同組件間的數據共享

 

                   --View

                            ---圖形用戶界面的基類 可視化界面的展示

                            ---Android圖形展示界面分三層:

                                                ----Views

                                                        -View         基本控件[按鈕、單選框、複選框、菜單.etc]

                                                        -ViewGroup佈局控件

                                                ----window[第二層]

                                                ----Activity[底層]

                   --Intent

                            ---不同控件間相互導航的紐帶 封裝不同組件間導航查找的條件

                            ---描述結構

                                     ----動作MAIN(Activity的門戶) VIEW PIC EDIT .etc                                 

                                     ----動作對應的數據 url形式進行表示

 

ADB[AndroidDebug bridge]

         -adb devices         查看Android設備

         -adb push               從本機到設備        

         -adb pull                  從設備到本機

DDMS(DalvikData Monitor Service)          Dalvik調試監控服務

         -對系統後臺運行日誌、系統線程、虛擬機狀態的監控

         -模擬撥打電話 發送短信 發送GPS位置信息

AADT(AndroidAsset Packaging Tool)                    Android資源打包工具

         -對Android工程資源進行打包

DX 將java編譯後的文件[.class]轉換成Dalvik虛擬機可執行文件[.dex]

--Dalvik Executable Format                                 

 

AndroidAPP資源目錄結構

- HelloWorld                                 工程名

         --src                                             源文件文件夾

         --com.amaker.app                   包名稱

         --MainActivity.java                   Activity類

         --gen                                            保存自動生成的R資源類文件夾

                  -->com.amaker.app         包名稱

                            --BuildConfig.java

                            -- R.java工程自動生成的資源索引類 該類根據不同的資源類型包含不同的靜態內部類

                                                        --- atrr                聲明屬性

                                                        ---drawable     聲明圖片資源

                                                        ---layout            聲明佈局文件

                                                        ---string            聲明字符串

setContentView(R.layout.main)通過訪問資源類R的內部類layout的main屬性來訪問layout文件夾下的main.xml佈局文件

         --Android x.x.x -->android.jar         Androidsdk jar文件

         --assets                                     保存原始資源文件的文件夾

         --res                                        資源文件夾

                   ---anim[animate]     動畫

                   ---drawable               圖片[位圖]

                            ---- low (ldpi), medium (mdpi), high(hdpi), extra high (xhdpi)

                            ----圖片格式 small, normal, large, xlarge

                   ---layout           xml佈局文件

                   ---menu            xml菜單文件

                   ---raw                         直接複製到設備裏的原生文件

                   ---values           常量值[各種xml資源文件]

                            ----arrays.xml           xml數組文件

                            ----colors.xml           xml顏色文件

                            ----dimens.xml         xml尺寸文件

                            ----styles.xml            xml樣式文件

                   ---xml                        任意xml文件

         --drawable                         保存圖片等資源文件夾

         --drawable-icon.png        圖標文件

         --layout                               界面佈局文件夾

-->main.xml界面佈局文件[程序使用的視圖組件 將表現層和控制層分開 降低程序的耦合性]

-->xxx.xml  其他界面佈局文件

         --values       簡單值配置文件夾

                            -->strings.xml                     字符串配置文件

                            -->xxx.xml                            相關類型配置文件

         --AndoridMainfest.xml                      Android全局配置清單文件

                   ---<application></application>

                   ---Activity、Service、ContentProvider、Broadcast Receiver

                   ---找到Activity的過濾器

                            <intent-filter>

                                     <android:name="android.intent.action.Main">

                                     <categoryandroid:name="android.intent.category.LAUNCHER" />

                             </intent-filter>

                   ---聲明權限&SDk的最低版本<uses-sdk android:minSdkVersion="3"> 

         --default.xml                               屬性文件

 

-Android資源

         --如何創建資源文件

         --如何在代碼中使用資源文件

                   ---A.如何在代碼中使用自定義的資源文件 

                            R.資源文件類型.資源文件名稱

                            //設置Activity顯示的佈局視圖

                            setContentView(R.layout.login_system);

                            //獲得Button實例

                            cancelBtn= (Button)findViewById(R.id.cancelButton);

                            loginBtn= (Button)findViewById(R.id.loginButton);

                            //獲得TextView實例

                            userEditText= (EditText)findViewById(R.id.userEditText);

                            pwdEditText= (EditText)findViewById(R.id.pwdEditText);

 

                   ---B.如何在代碼中調用系統中的資源文件

                            Android.R.資源文件類型.資源文件名稱

                           

                            inti;

                            //動畫

                            i= android.R.anim.fade_in;

                            //數組

                            i= android.R.array.emailadressTypes;

                            //顏色

                            i= android.R.color.dark_gray;

                            //尺寸

                            i= android.R.dimen.app_icon_size;

                            //可繪製圖形

                            i= android.R.drawable.title_bar;

                            //字符串

                            i= android.R.string.cancel;

 

         --如何在其他資源文件中引用該資源

                            --在其他資源文件中引用該資源 @[包名稱:]資源類型/資源名稱

                            <TextView

                                android:layout_width="fill_parent"

                               android:layout_height="wrap_content"

                               android:text="@string/style_welcome_message"

                               android:textColor="@color/opaque_red"

                               android:textSize="@dimen/sixteen_sp" />

         --編譯Android應用時,自動生成R類該類根據不同的資源類型生成相應的內部類

        

         packagecom.amaker.app

         //資源類

         publicfinal class R

         {       

                   //數組

                   publicstatic final class array{

                            publicstatic final int faultRecords=0×7f060000;

                   }

                   //屬性

                   publicstatic final class attr{

                  

                   }

                   //顏色

                   publicstatic final class color{

                            publicstatic final int red = ;

                            publicstatic final int black = ;

                   }

                   //圖片

                   publicstatic final class drawable{

                            publicstatic final int icon = ;

                            publicstatic final int logo2 = ;

                   }

                   //ID標示

                   publicstatic final class id{

                            publicstatic final int licenseEditText = ;

                            publicstatic final int lngEditText = ;

                   }

                   //佈局

                   publicstatic final class layout{

                            publicstatic final int custom_dialog = ;

                            publicstatic final int custom_dialog1 = ;

                   }

                   //字符串

                   publicstatic final class string{

                            publicstatic final int app_name = ;

                            publicstatic final int hello = ;

                   }

         }


--------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Unity開發</a>、<a href="http://edu.csdn.net"target="blank">.Net培訓</a>、期待與您交流! ----------------------

發佈了30 篇原創文章 · 獲贊 1 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章