Android--項目框架介紹


  公司最近要開發一款Android平台下的應用,通訊軟件,所以年后上班一直在研究Android方面的內容。

  使用Eclipse開發的Android,對於一個新建的Android項目,自動生成的項目結構如下圖:

  自動生成的目錄介紹:

  • src目錄:主要是存放編寫的Java代碼。
  • assets目錄:資源目錄。
  • res目錄:存放圖片、布局文件、字符串、菜單等文件。
  • bin目錄:輸出文件夾,如生成的APK文件。
  • project.properties:工程屬性文件配置。
  • gen目錄:系統自動生成的代碼目錄,存放R.java.

  這個R.java文件是系統自動生成的文件,非常的重要。這個R.java默認有attr、drawable、layout、string等4個靜態內部類,每個類對應一種資源。例如在工程中添加一幅圖片,那么工程就會在此類的drawable內部類中添加一條數據,如果刪除了此圖片,工程則會自動刪除此條數據。

  

  在res資源文件夾下包含有以下的文件:

  Drawable存放工程圖片的信息,默認png格式的圖片。

  Layout存放工程的布局文件以.xml結束。

  Values文件夾下存放一個很重要的string.xml,此文件夾存放的是自定義的字符串和數值。

  除了這個文件之外,還可以定義arrays.xml(用來定義數組)、color.xml(用來定義顏色和顏色字符串數值)、dimens.xml(用來定義尺寸數值)、styles.xml(用來定義樣式)。這些文件只是為了區分資源的類型,一種開發規范,便於開發人員識別修改,其實可以全部定義在string.xml文件中,均可以自動生成到R.java,便於使用。

資源文件分別的格式:

數組

<string-array name="city">

        <item >北京</item>

        <item >上海</item>

</string-array>

 

顏色,使用二進制的RGB值表示:

<color name="bgcolor">#FFCCFF</color> 

 

尺寸

<dimen name="width">20dp</dimen>

 

樣式

    <sytle name="customText">

        <item name="android:textSize">20sp</item>

  </sytle>

  在安卓的activity中,均有一個全局的方法,getResource()來獲取資源,具體資源的獲取方法如下:

文件

取值方式

String.xml

getResource().getString(resourceId)、getResource().getText(resourceId)

Arrays.xml

getResource().getStringArray(resourceId)

colors.xml

getResource().getDarwable(resourceId)、getResource().getColor(resourceId)

Dimens.xml

getResource().getDimension(resourceId)

Styles.xml

不需要取值

  

 

  AndroidManifest.xml文件介紹

  AndroidManifest.xml是每個android程序中必須的文件。它位於整個項目的根目錄,描述了package中暴露的組件(activities、services等等),他們各自的實現類,各種能被處理的數據和啟動位置。能聲明程序中的Activity、ContentProviders、ServersIntent Receivers、permissions和instrumentation(安全控制和測試)。

示例:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="bgxt.demo"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk android:minSdkVersion="10" />
    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:label="@string/app_name"
            android:name=".SimpleActivity" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

  

  其中manifest節點中的一些屬性,介紹:

  • Packgae:包,表示整個java應用程序的主要包名,而且是一個默認的程序名稱。
  • Android:versionCode:表示該工程說生產的apk的版本號,1開始,逐漸遞增。
  • Android:versionName:表示版本的一個名稱。類似於:1.0、2.0.
  • Android:installLoacation:自動尋找安裝的地方,ROM或者SDCard,默認屬性為自動。可選屬性有auto:系統默認、internalOnly:僅僅只能安裝在ROM上、preferExternal:會直接安裝在sdcard上。

  Application節點的一些屬性介紹:

  • Android:icon:表示應用程序的圖標,Logo圖片。
  • Android:label:表示應用的工程文字說明。

  Activity節點的屬性介紹:

  • Android:name:表示整個應用程序的主程序的名稱。
  • Intent-filter :意圖過濾器,用來過濾用戶的一些動作和操作。

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM