Ⅰ Android怎麼連接Web伺服器
在電腦上訪問本機web伺服器的時候,比如IIS或者Tomcat,用的是localhost或者127.0.0.1但是在android模擬器中,這個是代表手機的本地,所以訪問不了想要訪問的伺服器,只要把localhost或者127.0.0.1換成10.0.2.2就可以訪問電腦本地的web伺服器了(在網上學到的,為了方便以後查找所以做了一下筆記,呵呵)
Ⅱ android應用如何嵌入獨立的ijetty的servlet容器
2、server部分編譯出:i-jetty-server-3.1.jar;
3、總共對外依賴的包需要如下這些:
其中,xmlParserAPIs-2.6.2.jar和xpp3-1.1.4.jar因為某些原因會導致出錯,故可以剔除出去,並不影響ijetty的運行。為了簡介,這些類可以解壓後重新打包到一起,至少jetty的部分可以這么做。
4、web工程需要編譯成android可以解析的dex格式zip包,需要注意的是,第三方的lib需要剔除不需要的,尤其是servlet-api-2.5.jar,因為容器中已經包含一個了。
打包命令舉例:
dx.bat --dex --output=E:\demo\classes.zip E:\demo\WEB-INF\classes E:\demo\WEB-INF\lib025、把classes.zip包放到lib下,刪除原先的jar包,class下的類需要保留,然後打成war包:
jar cvf ppweb.war *.*
026、把ppweb放到jetty目錄下的webapps下即可,重啟程序即可訪問了。
027、基於ijetty的web需要注意,對外部context的引用需要用android系統的,不能用原先web工程那種方式獲取。
028、集成ijetty最重要的是用到IJettyservice這個類,以及Ijetty中定義的一些環境常量,用默認值即可很好運行。注意Ijetty中的如下代碼:static {__JETTY_DIR = new File(Environment.getExternalStorageDirectory(),
"jetty");// Ensure parsing is not validating - does not work with android
System.setProperty("org.eclipse.jetty.xml.XmlParser.Validating",
"false");
// Bridge Jetty logging to Android logging
System.setProperty("org.eclipse.jetty.util.log.class",
"org.mortbay.ijetty.AndroidLog");
Ⅲ java,android里的context都是什麼意思啊該如何處理
Context在Java中的出現是如此頻繁,但其中文翻譯「上下文」又是如此詭異拗口,因此導致很多人不是很了解Context的具體含義是指什麼,所以很有必要來深究一下這詞的含義。先來舉幾個JAVA中用到Context的例子 (1)JNDI的一個類javax.naming.InitialContext,它讀取JNDI的一些配置信息,並內含對象和其在JNDI中的注冊名稱的映射信息。請看下面的代碼
InitialContext ic=new InitialContext();
RMIAdaptor server=(RMIAdaptor)ic.lookup("jmx/invoker/RMIAdaptor");
這是一段JBoss中獲取MBean的遠程調用類的代碼。在這裡面通過InitialContext中JNDI注冊的名稱「jmx/invoker/RMIAdaptor」來獲得RMIAdaptor
對象。這和JAVA集合中的MAP有點象,有一個String的key,key對映著它的對象。(2)再來看看下面Spring中最常見的幾句代碼。ApplicationContext 是內含configuration.xml配置文件的信息,使得可以通過getBean用名稱得到相應的注冊對象。
ApplicationContext ctx= new ("configuration.xml");
Object obj= ctx.getBean("Object_Name");
從上面的代碼,我很能體會到Context所代表的意義:公用信息、環境、容器....。所以我覺得Context翻譯成上下文並不直觀,按照語言使用的環境,翻譯成「環境」、「容器」可能更好。 把Context翻譯成「上下文」只是不直觀罷了,不過也沒大錯。我們來看看中文的「上下文」是什麼意思。我們常說聽話傳話不能「斷章取義」,而要聯系它的「上下文」來看。比如,小麗對王老五說「我愛你」,光看這句還以為在說情話呢。但一看上下文--「雖然我愛你,但你太窮了,我們還是分手吧」,味道就完全變了。從這里來看「上下文」也有「環境」的意思,就是語言的環境。
上下文其實是一個抽象的概念。我們常見的上下文有Servlet中的pageContext,訪問JNDI時候用的Context。寫過這些代碼的人可能比較容易理解,其實他們真正的作用就是承上啟下。比如說pageContext他的上層是WEB容器,下層是你寫的那個Servlet類,pageContext作為中間的通道讓Servlet 和Web容器進行交互。再比如訪問JNDI的Context,他的上層是JNDI伺服器(可能是遠程的),下層是你的應用程序,他的作用也是建立一個通道讓你能訪問JNDI伺服器,同時也讓JNDI伺服器接受你的請求,同樣起到交互作用。
Ⅳ 如何優雅的設計Android WebView容器
首先,需要一個ProgressBar。
在onPageLoadFinish的時候隱藏,在onPageLoadStrat的時候顯示
需要重寫onBackPressed
如果webview canGoBack的話,需要goback,否則執行 super.onBackPressed
需要設置WebViewClient和WebChromeClient
實現一些alert等介面
不要暴露過多的javascript interface
Ⅳ 如何優雅的設計Android WebView容器
在onPageLoadFinish的時候隱藏,在onPageLoadStrat的時候顯示
需要重寫onBackPressed
如果webview canGoBack的話,需要goback,否則執行 super.onBackPressed
需要設置WebViewClient和WebChromeClient
實現一些alert等介面
不要暴露過多的javascript interface
Ⅵ 如何在android上部署web應用
各位有知道的希望能給點思路即可,有資料更好,在此先謝了。
Ⅶ android上有沒有開源的搭建web伺服器的軟體
1.安裝手機本地php+mysql伺服器環境篇 : 1.1安裝ksweb軟體,安裝好ksweb後,會在手機上生成一個文件夾htdocs,其目錄是mnt/sdcard/htdocs,htdocs是網站的根目錄。 1.2安裝mysql 直接點擊mysql管理,點擊選擇「是」然後解壓便可自動安裝。mysql的賬號密碼隨後再改(在設置裡面更改)。 1.3安裝好MySQL之後,(如下圖,打開phpmyadmin,表示安裝成功!),另外,我們需要對ksweb進行一些設置方可更好使用。 1.3.1埠的更改步驟:(啟用root→更改80埠)手機伺服器啟用root方法如下圖,在ksweb設置裡面把root打鉤。 1.3.2開啟手機80埠方法:把8080埠改為80埠,並把PHP服務,MySQL都打勾。其他一些設置比如MySQL密碼,開機自啟動等選項大家根據需要自行修改即可! 1.4ksweb全部設置好後,我們打開手機本地伺服器地址localhost:80,表示設置好了。 我們點擊頁面中的「Enter KSWEB Web Interface」可以看到手機伺服器的一些配置信息(默認賬號密碼都是「admin」)。表示手機服務搭建成功,一切正常! 2.利用nat123軟體進行內網80埠映射篇: 2.1注冊賬號,我們先到其官網注冊賬號官網,大家網路nat123即可,至於怎麼注冊我就不說了。 2.2登陸並添加域名解析, 2.2.1 應用名稱,我填的是網路電視直播—在線看電視。假如你要搭建自己的博客,你可以填XX的博客,或者XX的個人博客等。 2.2.2 內網埠,只有root的手機才填80埠,所以這也是為什麼一開始我說手機需要root! 2.2.3 內網地址這個默認localhost就行。 2.2.4 外網域名,我這里使用的是自己的域名(當使用自己的域名時,用cname解析,下面有當前唯一cname地址,我們在自己的域名解析裡面填這個就行)。如果我們沒有自己的域名,我們可以用官方免費的二級域名,注意他的格式)一切填好之後,點擊確認保存即可! 2.3 我們下載並安裝登陸安卓版的nat123,就自動解析了, 3.4 接下來我們在另一台電腦上輸入剛才的域名訪問 如下圖所示,表示安卓手機web伺服器安裝成功,網站搭建成功!