在你的开发机器上启动一个Tomcat服务,在电脑的浏览器上输入http://localhost:8080/就能够访问到Tomcat的主页面;那么,如果我们想在Android模拟器的浏览器上来访问,可以吗?答案是肯定的,但是访问的URL会有所变化,这又是为什么呢?请继续往下看。
在一般的Java Web程序开发中,我们通常使用localhost或者127.0.0.1来访问本机的Web服务,但是如果我们在Android模拟器中也采用同样的地址来访问,Android模拟器将无法正常访问到我们的服务,这是为什么呢?我们可以这样来理解:Android的底层是Linux kernel,包括Android本身就是一个操作系统,因此,这时我们在模拟器的浏览器中输入的localhost或127.0.0.1所代表的是Android模拟器(Android虚拟机),而不是你的电脑,明白了吗?这就是为什么你在模拟器中使用localhost时会报“Web page not available”的原因。
那到底要如何才能访问到本地电脑上的Web应用呢?在Android中,将我们本地电脑的地址映射为10.0.2.2,因此,只需要将原先的localhost或者127.0.0.1换成10.0.2.2,就可以在模拟器上访问本地计算机上的Web资源了。
那下面我们就启动电脑上的Tomcat,然后运行Android模拟器,打开模拟器上的浏览器,然后访问:http://10.0.2.2:8888 是不是已经看到那只可爱的Tomcat猫了呢?当然如果你的电脑是在局域网做那么你也可以电脑的局域网ip也可以看到那只可爱的Tomcat猫了。。。。
(形成 desc 黑点的 方法 – + 空格, 退出同样是 – + 格,即可退出)
- 注意,只需要 将localhost/ 127.0.0.1 改成 10.0.2.2 + path + …. 即可访问本机资源了
- 但是不可以 访问本地资源 比如说在本地html链接到 本地 ../my_jq.js ,就会失败
所有的资源都放到服务器上(该服务器需要绑定域名)才能提供对外的统一接口.
比如我的自定义 js 文件,路径如下:
放到博客媒体库即可,如下图所示: