Android隨筆01
通訊機制
- 1G(Generation):僅限語音的蜂窩電話標準,只能在一定頻率上進行通話,容易被竊聽.代表是大哥大
- 2G:手機使用 PHS,GSM 或者 CDMA 這些十分成熟的標準,具有穩定的通話質量和合適的待機時間,支援彩信業務的 GPRS 和上網業務的 WAP 服務,以及各式各樣的 Java 程式等,代表小靈通
- 3G:將無線通訊與國際網際網路等多媒體通訊結合的新一代行動通訊系統
- 4G:該技術包括 TD-LTE 和 FDD-LTE 兩種制式.LTE是Long Term Evolution的縮寫.4G 是集 3G 與 WLAN 於一體,並能夠傳輸高質量視訊影象.4G 理論上可以達到 100Mbps 的下載速度
Android系統架構
應用程式層
該層不僅包括系統內建的應用也包括使用者自己安裝的應用
應用程式框架層
Android 系統中的每個應用都依賴於該框架提供的一系列服務和系統,其中包括:
1.活動管理器( Activity Manager) :用來管理應用程式生命週期並提供常用的導航回退功能
2. 豐富而又可擴充套件的檢視(Views):可以用來構建應用程式, 它包括列表(lists),網格(grids),文字框(textboxes),按鈕(buttons),甚至可嵌入的web 瀏覽器。
3. 內容提供器(Content Providers):使得應用程式可以訪問另一個應用程式的資料(如聯絡人資料庫), 或者共享它們自己的資料。
4. 資源管理器(Resource Manager):提供非程式碼資源的訪問,如本地字串,圖形,和佈局檔案( layoutfiles )。
5. 通知管理器(Notification Manager):使得應用程式可以在狀態列中顯示自定義的提示資訊。
系統執行庫層
該層主要分為Libaries程式庫和Android Runtime庫
Linux核心層
Android 的核心繫統服務依賴於 Linux 核心,如安全性,記憶體管理,程式管理,網路協議棧和驅動模型。Linux 核心也同時作為硬體和軟體棧之間的抽象層。
兩種虛擬機器的比較
Java程式設計師使用的是Java Virtual Machine(JVM),而我們Android使用的是Dalvik Virtual Machine(DVM);JVM執行的是.class檔案,而DVM執行的是.dex檔案;Dalvik 基於暫存器,而JVM 基於棧。
Android的五大布局
Android 有5 大布局,分別是RelativeLayout、LinearLayout、FrameLayout、AbsoluteLayout、TableLayout。不過前3 種佈局才是最常用的佈局,AbsoluteLayout 已經被Google 廢除,TableLayout 可以被GridView 替代,因此也很少用.
線性佈局LinearLayout
案例:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="number"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="MC" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="MR" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="MS" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="M+" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="M-" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="←" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CE" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="C" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="+-" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="√" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="7" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="8" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="9" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="/" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="%" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="4" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="5" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="6" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="8" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1/x" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<LinearLayout
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="4"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="1" />
<Button
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="2" />
<Button
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="3" />
<Button
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="-" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="2"
android:text="0" />
<Button
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="." />
<Button
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="+" />
</LinearLayout>
</LinearLayout>
<Button
android:layout_width="0px"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="=" />
</LinearLayout>
</LinearLayout>
相關文章
- Android:隨筆——取代findViewByIdAndroidView
- Android伍什小隨筆(一)Android
- L01 Laravel 教程 隨筆Laravel
- Android應用耗電分析隨筆Android
- Android:隨筆——Android必須知道的註解AnnotationsAndroid
- Android伍什小隨筆(二)- 更新中Android
- 2018 年終總結 – 隨筆
- 隨筆
- Android 隨筆—— ConstraintLayout 實戰經驗AndroidAI
- Android 隨筆—— ConstraintLayout 效率爆表的技巧AndroidAI
- Android:隨筆——對頁面的View進行截圖AndroidView
- Android隨筆——搞定流動佈局(FlexboxLayout)AndroidFlex
- MySQL 隨筆MySql
- 隨筆記筆記
- RabbitMQ隨筆MQ
- vuex隨筆Vue
- jQuery隨筆jQuery
- Fragment隨筆Fragment
- oracle 隨筆Oracle
- 隨筆(二)
- 隨筆哦
- 隨筆1
- 隨筆3
- 隨筆2
- docker隨筆Docker
- MySQL隨筆MySql
- 隨筆(1)
- vue隨筆Vue
- 真隨筆
- 翻譯隨筆(隨時更新)
- Android 隨筆—— 最強大的佈局 ConstraintLayoutAndroidAI
- 隨堂筆記筆記
- IDE隨筆IDE
- 面試題隨筆面試題
- 工作感想隨筆
- CSS隨筆1CSS
- CSS隨筆2CSS
- nodeJs隨筆NodeJS