學習目標:WebApp——把HTML5應用打包到Android手機中。html
特色:代碼量少!思路簡單!——過程有點亂,很容易出錯!java
面試題:面向過程(function)和麪向對象(object)的區別?android 面向過程的語言:C、C++、JavaScript、PHP —— 底層軟件,如三大基礎軟件web 面向對象的語言:C++、JavaScript、PHP、Java、C# —— 高層應用軟件面試 |
Hybrid App = NativeApp + WebApp瀏覽器
1.原生App和WebApp的比較服務器
原生(Native)App指:網絡
iOS(Linux-C): Objective-C、Swiftapp
Android(Linux-C): Javaeclipse
WebApp指:
使用HTML5編寫的移動Web應用。一個WebApp幾乎能夠不加修改的運行在PC、Android、iOS等平臺。
優點:一套代碼處處運行。
劣勢:某些底層功能缺失,運行速度不如原生App。
(1)保證在「個人電腦」中能夠看到並打開個人手機
(2)Android系統 => 設置 => 開發者選項 => 啓用USB調試
就能夠直接安裝本身開發的移動應用到Android系統了
2.Android開發環境的搭建
(1)下載並安裝Java程序的運行環境——JDK(JavaDevelopmentKit)
baidu:jdk安裝
保證在命令行中輸入 java.exe 能夠運行
(2)下載並解壓縮Android應用的開發環境——ADT(AndroidDeveloperTools)
(3)啓動ADT: eclipse/eclipse.exe
(4)建立虛擬的Android設備——Android Virtual Device Manager
注意:有真實Android手機能夠省略此步,在
Eclipse->Window->OpenPerspective->DDMS
界面下能夠查看到本身的手機
(5)建立Android應用程序,選擇自定義圖標,定製窗口中的內容,安裝真實手機或虛擬手機中。
提示:若ADT沒法發現真實手機,能夠把項目運行一下,在bin目錄下會生成Android應用程序的安裝程序: xxx.apk 能夠直接把此文件拷貝到手機的sd卡中,使用手機直接安裝此apk文件。
3.Android應用的目錄結構
如何設置一個全屏顯示的窗口:
修改項目清單文件 AndroidManifest.xml:
<application android:theme="@android:style/Theme.NoTitleBar.FullScreen">
4.建立一個HybridApp
混合App: 像原生App同樣有圖標,點開後呈現一個原生App的窗口(稱爲Activity);此窗口中只有一個組件——一個瀏覽器內核(不帶地址欄),能夠限定此瀏覽器內核只顯示特定的網頁。
建立WebView組件——用於顯示網頁內容(即瀏覽器的核心)
WebView wv = new WebView(this); //建立瀏覽器核心對象
this.setContentView(wv); //窗體中添加webView組件
1)使用WebView加載APK文件中打包好的Android本地網頁:
全部的HTML/CSS/JS都必須保存Android項目的assets目錄下
WebView wv = new WebView(this);
this.setContentView(wv);
wv.getSettings.setJavaScriptEnabled(true); //啓用JS支持
wv.loadUrl("file:///android_asset/xx.html"); //加載本地的HTML文件
2)使用WebView加載遠程Web服務器上的網頁:
除了上述步驟外,還須要向用戶申請網絡使用權限:
AndroidManifest.xml中:
<uses-permission android:name="android.permission.INTERNET">
MainActivity.java中:
wv.loadUrl("http://tmooc.cn"); //加載互聯網的HTML文件