當前位置:首頁 » 操作系統 » androidhtml5源碼

androidhtml5源碼

發布時間: 2022-09-06 04:40:02

Ⅰ 怎樣 用html5開發android app

下載安裝MyEclipse2014,Android SDK,eclipse(需配置Android開發環境)
Java和Android環境安裝與配置,將另寫經驗分享,讀者也可網路參考其他相關資料,自行安裝
打開MyEclipse2014,新建一個HTML5 Mobile Application Project,命名,例如:hello

html5程序在工程www目錄下編輯;
編輯好我們的html5程序,下面就要開始學習打包了

這里介紹兩種打包方式:1、PhoneGap Build Service 打包
PhoneGap官網有相關教程可參考,不具體介紹
2、android SDK +eclispe 打包

android SDK +eclispe 打包(前提已配置好,android開發環境):
Step1、啟動eclipse,新建Android Application Project,即Android工程,命名,例如:hello

Step2、將前面Myeclipse2014中編輯好的HTML5程序(www整個目錄)拷至剛剛在eclipse新建hello工程對應assets目錄下面

Step3、下面要做的就是如何將我們的HTML5程序在Android應用中啟動,這里我們要使用Android系統自帶的WebView控制項(具體信息參考Adroid開發文檔)---在工程下找到res->layout->activity_main.xml並打開,向裡面插入WebView控制項,編輯好自己想要的樣式

Step4、在主程序入口,用剛剛編輯好的WebView控制項將HTML5程序引入,此時,主體功能已實現,編譯工程即可得到apk

Ⅱ android嵌入html5 不能運行js代碼

webview.getSettings().setJavascriptEnable(true);

Ⅲ HTML5會不會威脅Android的開發

不會威脅Android的開發,從以下幾點考慮:
1、 html5有它的優點,可以跨平台使用,一次編碼適配多種平台,但它的缺點是性能沒辦法和原生相比。
2 、 從市場需求來說,一般公司又都會配備前端工程師,和移動工程師,是兩個不同的崗位,有著自己的業務范圍。
3 、現在比較流行混合開發,Android代碼調用Html5頁面,兩種崗位可以很好的協同工作
4、 從適配多手機來說,Html5的方案遠沒有Android官方來的成熟
不管是Android也好,還是HTML5也好,都是有自己的領域,兩個平台是可以更好的協同發展,並沒有誰影響誰的概念。

Ⅳ HTML5能取代Android和iOS應用程序嗎

糾正一下,HTML5和Android和iOS不是平等關系,他是一種語言,只能和JAVA及OC對等

下面回答,不能,至少短期內(個人認為5~10年),原因如下:
1、Android是谷歌的,iOS是蘋果的,各家有各家的利益

2、Android主流開發語言是JAVA,iOS是OC,為什麼,OC是iOS的專用語言這個暫且不說,而之所以Android使用JAVA是看中了之前做J2EE和J2SE等,大量的JAVA開發人員,之所以Android火起來,不單是Android開源(使手機生產商的生產成本下降),更是大量的JAVA開發人員能夠快速的進入這個新興平台,從技術上(可以理解為大量的App發布)推動Android進步

3、成本問題,以上兩點其實都在說這個問題,用HTML5取代JAVA和OC,首先要考慮人力成本問題,要有大量HTML5開發人員這個前提條件,否則用人單位不會為此付出更多的人力成本和風險成本(主要的,會不會開發出來的東西效果很垃圾),而谷歌和蘋果開發Android和iOS更是花費了極大的成本,他們也不會願意看到自己的成果被別人竊取而損害自己的利益

4、性能問題,其實還是從成本角度出發,HTML5這個東西他再厲害是跑在瀏覽器上的,谷歌和蘋果怎麼可能在損害自己利益的情況下,還會花大價錢開發更高級的瀏覽器以適應HTML5(把HTML5跑的和應用程序一樣快),如果系統內置的瀏覽器達不到那個量級,外置瀏覽器都是扯淡,所以你會看到,HTML5好不好,很好,但是在Android和iOS上和原生應用程序比較,他就是慢,就是山寨,各種特效都出不來的情況下還談什麼HTML5

5、開發者問題,也是相輔相成的,看看現在市面上有幾個喜歡做WEB前端的就知道了,人才很少,價格很低(我也在招人,有感而發),這就導致更少的人去學去做,更不要說在Android和iOS平台上,HTML5要適應這兩個平台的規則,比如JS回調要在JAVA中執行的問題,這就導致你要學習HTML5就要多學習Android,那我為什麼不直接學Android,種種原因會導致HTML5(在手機平台)的開發者短期內不會爆發式增長(多說一嘴,要解決這個問題,兩種可能,1、像Android,原本就有那麼多JAVA開發者,而且這些JAVA開發者還做過手機,2、用人單位普遍的覺得HTML5好,從而願意花大價錢聘請HTML5開發者,從而抬高整體行業薪資,使跟風者不絕。目前看這兩種可能性都不存在)

6、語言成熟度,語言成熟度不是說SDK第幾版,語言本身是否還有漏洞這種問題,成熟度本身的意味其實就是「人」和「庫」,是「能否進行快速開發」,比如php效率低下,為什麼這么火,價格這么高,原因是漫天的完整源碼、框架、庫,是大量的有豐富經驗的開發者,是「快速開發」。HTML5?還差的太遠!所謂「成熟」,還得時間的積累

綜上,HTML5很新很火,那是在PC WEB平台,開發者少,收入不高,在Android和iOS平台上運行效率低,開發風險高,不成熟,所以我說「不能,至少短期內(個人認為5~10年)」

原創哦,親,純手打的,給個贊吧~

Ⅳ 如何利用html5開發android界面

H5開發安卓界面需要注意以下三點:
(上)包括Android設備多解析度的問題,Android中構建HTML5應用程序基礎
(中)包括Android與JS之間的互動,Android處理JS的警告對話框等,Android中的調試
(下)包括本地儲存在Android中的應用,地理位置的應用,離線應用的構建
進入正題
● Android設備多解析度的問題
Android瀏覽器默認預覽模式瀏覽 會縮小頁面 WebView中則會以原始大小顯示
Android瀏覽器和WebView默認為mdpi。hdpi相當於mdpi的1.5倍 ldpi相當於0.75倍
三種解決方式:1 viewport屬性 2 CSS控制 3 JS控制
1 viewport屬性放在HTML的<meta>中
html代碼:

<span style="font-size: x-small;"> <head>
<title>Exmaple</title>
<meta name=」viewport」 content=」width=device-width,user-scalable=no」/>
</head></span>
meta中viewport的屬性如下:
<span style="font-size: x-small;"> <meta name="viewport"
content="
height = [pixel_value | device-height] ,
width = [pixel_value | device-width ] ,
initial-scale = float_value ,
minimum-scale = float_value ,
maximum-scale = float_value ,
user-scalable = [yes | no] ,
target-densitydpi = [dpi_value | device-dpi |
high-dpi | medium-dpi | low-dpi]
"
/>
</span>
2 CSS控制設備密度
為每種密度創建獨立的樣式表(注意其中的webkit-device-pixel-ratio 3個數值對應3種解析度)
html代碼:

<link rel="stylesheet" media="screen and (-webkit-device-pixel-ratio: 1.5)" href="hdpi.css" />
<link rel="stylesheet" media="screen and (-webkit-device-pixel-ratio: 1.0)" href="mdpi.css" />
<link rel="stylesheet" media="screen and (-webkit-device-pixel-ratio: 0.75)" href="ldpi.css" />
3 JS控制
Android瀏覽器和WebView支持查詢當前設別密度的DOM特性
window.devicePixelRatio 同樣值有3個(0.75,1,1.5對應3種解析度)
JS中查詢設備密度的方法
js代碼:
if (window.devicePixelRatio == 1.5) {
alert("This is a high-density screen");
} else if (window.devicePixelRation == 0.75) {
alert("This is a low-density screen");
}
Android中構建HTML5應用
使用WebView控制項 與其他控制項的使用方法相同 在layout中使用一個<WebView>標簽
WebView不包括導航欄,地址欄等完整瀏覽器功能,只用於顯示一個網頁。

Ⅵ 如何在android中使用html5的本地資料庫

解決方案1:
通過將Apache Cordova或嵌入的WebView指向一個託管於互聯網的網頁來構建的app只能提供可憐的用戶體驗、解析度。
HTML5支持跨平台,諸如 Intel XDK new IDE,HTML5使得處理這龐大而多樣的Android設備隊伍變得快速而簡單。更添其復雜性的是解析度范圍從240×320跨到2560×1600。這類布局能良好運行, run any where(只寫一次。這無疑讓開發人員置身於一個尷尬境地,現在在平板電腦領域享有多數市場份額(53%),諸如攝像機和加速計,你要用最新最好的SDK,就放棄它開始關注新硬體了。這將允許你的app在非同步更新時。
有了HTML5。
龐大的Android設備隊伍
在Android設備運行的不同不僅僅是表面上的。它即時響應的能力很適合現在數不勝數的安卓設備屏幕尺寸,你的app將不能在2、Intel等製造。
好在HTML5提供一個更好的途徑來處理尺寸大小的問題——用響應設計。讓Android有如此熱度的一部分因素是其多樣性。你可以用強大的它來構建你的app。為了保持你的app以最快的速度響應,無視Android操作系統版本,原生Android SDK可能不會兼容什麼特別設備。
大多數移動app從互聯網伺服器上載入和保存數據。你第一次用HTML5取代、CPU架構和操作系統版本等。
「服務員,根據OpenSignal對超過五十萬台Android設備中,當然,小至三星的新齒輪智能手錶,名為Gingerbread(姜餅2,從而使它能夠在用戶點擊後就運行、Windows Phone等移動操作系統上,是它支持著大多數智能手機,沒有標準的HTL5界面,這包括定義你的app圖標,立即渲染其UI.1%).3 x)的版本依然占據著最大市場份額(34。一些交互編譯器可以允許創建針對Android和iOS的app、iOS,HTML5應用通常託管於Apache Cordova (aka PhoneGap)內;值存儲,是出了名地衰,還要你的app在沒有伺服器端生成HTML的情況下工作、載入屏幕和提供JavaScript來訪問原生操作系統硬體。製造商發布設備。為獲得接近於原生的速度、CSS和JavaScript上提供一種美妙的體驗。
要訪問原生操作系統功能,在更小的屏幕上縮小或消除那些並不重要的元素。一方面.0 SDK(冰淇淋三明治)開發app。如果你的app每次都需要用戶通過點擊一些東西來下載用戶界面;而依據Canalys的調研。
HTML5應用絕對需要被安裝到設備上,深度嵌套的HTML表格。因此,你不用再糾結於選擇。
Android SDK是操作系統特定的!
結論
HTML5允許你寫一次應用程序並快速部署它到幾乎現有的每個操作系統。幾乎每個用戶都有一個的Android設備的尺寸和形狀,另一方面。
當如此多樣的設備讓用戶歡喜時,即便是重新調整屏幕.ASPX或PHP來開啟一個新項目將需要十足的信仰之外。不幸,如果你想要依據用戶需求滾動到視圖中查看app?Android同樣滿足你。
移植到其它平台
Java的願景是「write once,哪兒都能跑)」,還支持網頁。也就是說、MediaTek,帶有盡可能少的嵌套級別標簽。
在諸如Android,想要一個13英寸帶可拆卸鍵盤的平板電腦、文件系統IO甚至通過地理定位訪問GPS的強大APIs。
HTML5提供APIs來做很多通常被認為是原生操作系統功能的事情,任何Android設備的心臟部分都是CPU由Qualcomm。HTML5包含對於鍵/。
HTML的復雜性使得關於渲染你的用戶界面需要多少CPU cycles有了很大不同,大至13英寸或更大的平板電腦,出於種種原因,最好是保持你的HTML盡可能地結構簡單化。
當響應設計正確完成時,這是在任何操作系統上解決屏幕尺寸/,用戶就對跨平台的app有了流暢的體驗、PowerVR、NVidia,它也為開發人員帶來了不少頭疼的麻煩。幸運的是。響應設計是由CSS Media Queries所增強的簡單結構的HTML在更大的屏幕利用更多的空間。屏幕尺寸.3(姜餅)上運行,你可能得用線形布局或網格視圖,如果它們是被精心無誤地製作處理的。
各種形狀和大小
Android設備有著各種尺寸,你將要在本地存儲一個緩存數據並非同步刷新你的數據,但只有HTML5能在移動操作系統和互聯網瀏覽器上運行,你所有的HTML5,如果你用4,我的凍酸奶裡面有果凍豆」
Android初次廣泛登台是在2009年,這為Android開發人員營造了挑戰、JavaScript和CSS都必須安裝在本地設備上,你要app得到盡可能多的下載,都會為開發人員創建原生Android app帶來挑戰,你可以在Android使用HTML開放式架構。舉個例子說,一般只對操作系統更新一兩次,Apache Cordova充當將你的HTML5聯繫到原生操作系統的角色。
要解決這個問題;解析度問題的最好辦法。憑借大量可用的工具。取決於你的app需要用到哪個操作系統的特性,這是不可能滿足他們「即時響應」的期望的。
開啟你的瀏覽器
HTML5應用的性能可以無限接近於原生性能。 Apache Cordova framework提供一個界面讓你的app在任何設備上訪問原生操作系統資源,Android是全球最受歡迎的移動操作系統

Ⅶ Android webview html5地理定位

我查看了下源碼解決了,主要代碼如下://啟用資料庫webSettings.setDatabaseEnabled(true);Stringdir=this.getApplicationContext().getDir("database",Context.MODE_PRIVATE).getPath();//啟用地理定位webSettings.setGeolocationEnabled(true);//設置定位的資料庫路徑webSettings.setGeolocationDatabasePath(dir);//最重要的方法,一定要設置,這就是出不來的主要原因webSettings.setDomStorageEnabled(true)//配置許可權(同樣在WebChromeClient中實現)(Stringorigin,GeolocationPermissions.Callbackcallback){callback.invoke(origin,true,false);super.(origin,callback);}配置許可權:<uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"/><uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION"/>

Ⅷ 怎麼用html5開發android

Android瀏覽器默認預覽模式瀏覽 會縮小頁面 WebView中則會以原始大小顯示
Android瀏覽器和WebView默認為mdpi。hdpi相當於mdpi的1.5倍 ldpi相當於0.75倍
三種解決方式:1 viewport屬性 2 CSS控制 3 JS控制
1 viewport屬性放在HTML的<meta>中

Html代碼
<SPAN style="FONT-SIZE: x-small"> <head>
<title>Exmaple</title>
<meta name=」viewport」 content=」width=device-width,user-scalable=no」/>
</head></SPAN>

meta中viewport的屬性如下

Html代碼
<SPAN style="FONT-SIZE: x-small"> <meta name="viewport"
content="
height = [pixel_value | device-height] ,
width = [pixel_value | device-width ] ,
initial-scale = float_value ,
minimum-scale = float_value ,
maximum-scale = float_value ,
user-scalable = [yes | no] ,
target-densitydpi = [dpi_value | device-dpi |
high-dpi | medium-dpi | low-dpi]
"
/></SPAN>

2 CSS控制設備密度
為每種密度創建獨立的樣式表(注意其中的webkit-device-pixel-ratio 3個數值對應3種解析度)

Html代碼
<link rel="stylesheet" media="screen and (-webkit-device-pixel-ratio: 1.5)" href="hdpi.css" />
<link rel="stylesheet" media="screen and (-webkit-device-pixel-ratio: 1.0)" href="mdpi.css" />
<link rel="stylesheet" media="screen and (-webkit-device-pixel-ratio: 0.75)" href="ldpi.css" />

在一個樣式表中,指定不同的樣式

Html代碼
#header {
<SPAN style="WHITE-SPACE: pre"> </SPAN> background:url(medium-density-image.png);
}
@media screen and (-webkit-device-pixel-ratio: 1.5) {
// CSS for high-density screens
#header {
background:url(high-density-image.png);
}
}
@media screen and (-webkit-device-pixel-ratio: 0.75) {
// CSS for low-density screens
#header {
background:url(low-density-image.png);
}
}

Html代碼
<meta name="viewport" content="target-densitydpi=device-dpi, width=device-width" />

3 JS控制
Android瀏覽器和WebView支持查詢當前設別密度的DOM特性
window.devicePixelRatio 同樣值有3個(0.75,1,1.5對應3種解析度)
JS中查詢設備密度的方法
Js代碼
if (window.devicePixelRatio == 1.5) {
alert("This is a high-density screen");
} else if (window.devicePixelRation == 0.75) {
alert("This is a low-density screen");
}

● Android中構建HTML5應用
使用WebView控制項 與其他控制項的使用方法相同 在layout中使用一個<WebView>標簽
WebView不包括導航欄,地址欄等完整瀏覽器功能,只用於顯示一個網頁
在WebView中載入Web頁面,使用loadUrl()
Java代碼
WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.loadUrl("http://www.example.com");
注意在manifest文件中加入訪問互聯網的許可權:
Xml代碼
<uses-permission android:name="android.permission.INTERNET" />

在Android中點擊一個鏈接,默認是調用應用程序來啟動,因此WebView需要代為處理這個動作 通過WebViewClient
Java代碼
//設置WebViewClient
webView.setWebViewClient(new WebViewClient(){
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
});
這個WebViewClient對象是可以自己擴展的,例如
Java代碼
private class MyWebViewClient extends WebViewClient {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (Uri.parse(url).getHost().equals("www.example.com")) {
return false;
}
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
return true;
}
}

之後:
Java代碼
WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.setWebViewClient(new MyWebViewClient());
另外出於用戶習慣上的考慮 需要將WebView表現得更像一個瀏覽器,也就是需要可以回退歷史記錄
因此需要覆蓋系統的回退鍵 goBack,goForward可向前向後瀏覽歷史頁面
Java代碼
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebView.canGoBack() {
myWebView.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
Java代碼
WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);

Ⅸ 如何將html5程序打包成Android應用

將HTML5打包為Android應用可以使用HBuilder

下載安裝完畢後操作步奏如下:

  1. 點擊文件->新建->新建移動APP

Ⅹ 安卓webview對html5支持怎麼樣

安卓webview完美支持html5.
提供下思路

mWebView.setWebChromeClient(new WebChromeClient() { public void openFileChooser(ValueCallback<Uri> uploadFile, String acceptType) { });復制代碼
可以閱讀下WebChromeClient的源碼,我就摘抄下吧
/**
* Tell the client to open a file chooser.
* @param uploadFile A ValueCallback to set the URI of the file to upload.
* onReceiveValue must be called to wake up the thread.a
* @param acceptType The value of the 'accept' attribute of the input tag
* associated with this file picker.
* @hide
*/如果不管用添加這個方法
public void openFileChooser(ValueCallback<Uri> uploadFile, String acceptType,String capture)
因為Android API變化了。

熱點內容
安卓手機如何關閉鎖屏模式 發布:2024-05-13 03:53:44 瀏覽:389
delllinux 發布:2024-05-13 03:51:40 瀏覽:45
爐石傳說文件夾 發布:2024-05-13 03:05:11 瀏覽:265
百度識圖緩存的圖片在哪裡 發布:2024-05-13 03:04:28 瀏覽:990
搬家公司源碼 發布:2024-05-13 03:04:24 瀏覽:649
博士地編程 發布:2024-05-13 03:02:06 瀏覽:838
硫酸是怎麼配置的 發布:2024-05-13 02:22:11 瀏覽:626
如何把安裝密碼弄沒 發布:2024-05-13 02:16:36 瀏覽:24
中文轉unicodephp 發布:2024-05-13 02:15:42 瀏覽:415
小白編程網 發布:2024-05-13 02:10:15 瀏覽:783