网站首页  词典首页

请输入您要查询的论文:

 

标题 一种使用Web技术快速搭建Android PHP应用运行环境的方法
范文 邢益良++韩宝如++裴云++雷华军



摘要摘要:顺利搭建Android PHP应用运行环境能降低开发人员的学习难度。对运行环境中失败率较高的PFA安装问题提出了解决方法。首先搭建Web服务器,然后重定位域名,最后搭建运行环境。实践表明该方法具有简单、有效和不受互联网干扰等优点。
关键词关键词:PHP; Android;Web;PFA;运行环境
DOIDOI:10.11907/rjdk.151889
中图分类号:TP301
文献标识码:A文章编号文章编号:16727800(2015)011001103
基金项目基金项目:海南省自然基金资助项目(20156237)
作者简介作者简介:邢益良(1979-),男,海南文昌人,硕士,海南软件职业技术学院软件工程系讲师,研究方向为软件工程、计算机图形图像处理;韩宝如(1982-),男,山东临沂人,博士,海南软件职业技术学院软件工程系副教授,研究方向为数字水印和故障诊断;裴云(1983-),男,贵州铜仁人,硕士,海南软件职业技术学院软件工程系讲师,研究方向为数字图像处理、计算机技术;雷华军(1979-),男,湖南嘉禾人,海南软件职业技术学院软件工程系助教,研究方向为计算机基础理论。
0引言
PHP是一种脚本语言,它具有开发简单快速等优点,可用来开发Android应用。Android PHP运行环境是Android PHP脚本应用的运行和开发基础。要搭建Android PHP运行环境,需要借助SL4A[1]和PFA(PHP for Android)[2]两个重要应用组件。SL4A英文名为Scripting Layer for Android,中文名为Android脚本层,它的作用是为脚本提供WiFi、蓝牙、UI和语音合成等Android原生态服务。SL4A支持的脚本语言包括Python、JavaScript和PHP等。PHP脚本要访问SL4A原生态服务需借助开源公司IronTec提供的开源项目PFA。实质上,PFA是运行于Android平台的PHP脚本解析器,PHP脚本可以通过它被解析和运行。PFA支持PHP基础语法、PHP部分函数、JSON数据类型和Socket编程等内容。关于Android PHP开发环境,邢等人对其应用有较系统的阐述,PFA方法的不足是安装依赖谷歌网站。由于谷歌网站在国内存在访问速度慢等问题,因此PFA安装容易导致Android PHP运行环境搭建失败。本文探讨利用Web域名重定位技术搭建Android PHP开发环境,可避免因谷歌网站造成环境搭建失败问题。
1搭建原理
1.1Web服务器及其域名定位方法
WWW是World Wide Web的缩写,简称为Web,中文名为“万维网”,它诞生于1989年3月。Web采用的是服务器/浏览器体系结构,HTTP是Hyper Text Transportation Protocol(超文本传输协议)的缩写,Web服务器与浏览器通过HTTP通信协议在互联网发送和接收数据。通过HTTP协议,Web服务器不仅支持用户浏览网页,而且支持用户下载文件。在 HTTP 中,总是浏览器主动呼叫服务器建立连接和发送HTTP 请求,启动一个事务。服务器不能主动与客户端联系,也不能给客户端发出一个回叫连接。IIS和Apache等是常见的Web 服务器。迄今为止,Apache是世界上使用量最高的Web服务器软件,其可以运行在Linux、Windows和Unix等操作系统中。
用户可以通过IP地址和域名定位Web服务器。IP地址是服务器的真实地址,虽然域名也可用来定位服务器,但它需解析成IP地址。当用户通过浏览器访问Web服务器时,操作系统首先通过DNS域名解析服务器,把域名解析成IP地址,之后,运行在操作系统上的浏览器才能对此网站进行定位和访问网站数据。能否正常访问网站依赖DNS域名解析服务器是否能正常工作。快速解析和访问Web服务器的一种简单、有效的方法是修改文件hosts。操作系统规定,在域名进行DNS域名解析请求之前,先检查操作系统的hosts文件中是否有这个域名和IP的映射关系。如果有,则直接访问这个IP地址指定的网络位置,如果没有,再向DNS服务器提出域名解析请求。也就是说文件hosts的IP解析优先级比DNS要高。
1.2运行环境搭建原理
Android PHP应用运行环境搭建原理如图1所示,由Android手机和Web服务器两部分组成,其中,Android手机由组件SL4A、组件PFA和文件hosts组成,手机通过文件hosts把谷歌网站重定向自搭建的Web服务器,组件PFA通过HTTP协议可从Web服务器下载文件自动完成安装工作;Web服务器为组件PFA提供文件下载服务,其下载的文件包括php_extras_r3.zip等。环境搭建主要步骤:①下载环境搭建相关软件,包括SL4A、PFA、PFA二次安装相关文件和PHPNow等;②安装Web服务器;③部署PFA二次安装相关文件到Web服务器;④谷歌域名重定向自搭建Web服务器;⑤安装SL4A和PFA组件;⑥运行PFA组件下载PFA二次安装相关文件,完成安装。
本文方法需先下载SL4A组件、PFA组件、PFA组件相关文件以及PHPNow套件,前三者可在官方网站或非官方网站http://pan.baidu.com/s/1mgknrja下载,PHPNow套件可从官方网站http://servkit.org/download/下载。文件清单如表1所示。
PHPnow[4]是Win32下绿色免费的Apache+PHP+MySQL环境套件包,PHPNow是绿色的,其具有安装简单和集成套件等特点。PHPNow套件最新版本是PHPNow 1.5.6,该套件包含有Apache服务器等软件包。本文方法应用PHPNow建立Web服务器。
由于在Android中首次运行PFA组件时需从Web服务器下载PFA二次安装文件,因此需事先在Web服务器中部署好相关文件。其相关文件应复制部署到“Web服务器主目录files子目录”,因为PFA组件会通过此目录下载文件。
Android中用于域名定位的文件hosts位于目录“/system/etc”下,通过修改该文件可让Android系统访问指定域名时转向访问PC端Web服务器。文件hosts存储了网站域名和IP地址的映射关系,每个映射关系用一行记录表示,每行记录具体格式是“IP地址 网站域名”,比如,“127.0.0.1 www.google.com”,当访问域名“www.google.com”时,将访问本机。由于Android模拟器的文件系统默认为只读属性,因此要修改hosts文件需要把只读改为可读写属性。要修改文件hosts还需要用户具有root权限。
2实验过程和结果
本文方法在Win7+Android模拟器中运行通过,Android版本为2.3.3。
2.1PHPNow搭建Web服务器
要安装Web服务器,先把PHPNow套件解压到某个目录中,比如解压目录为“C:PHPNow”;然后执行解压目录中的Setup.cmd命令文件,该命令文件执行过程会以命令方式提示用户选择Apache服务器和MySQL数据库选项,以及设置MySQL用户密码;用户按提示选择和设置好密码后,系统会自动搭建好一个Apache+PHP+MySQL环境。事实上本文方法只需要Apache服务器。要测试Web服务器是否已安装成功,可在浏览器中输入“http://127.0.0.1/”,如果能显示PHPNow主界面,表明环境搭建成功,否则表示失败。图2是PHPNow主界面。
2.2部署PFA二次安装文件
要查看Apache服务器主目录,可在PHPNow主界面中查看“网站主目录”项,该项通常为“C:/PHPnow-1.5.6/htdocs”。要部署PFA二次安装文件,可先在网站主目录中建立子目录files,再把文件拷贝到目录“C:PHPnow-1.5.6htdocsfiles”中。
2.3修改hosts快速定位域名
可在Windows命令窗口中输入“adb root”和“adb remount”命令,让Android模拟器成为root用户及让文件系统具有读写属性。之后输入“adb shell”进入模拟器的shell控制台,通过echo命令和重定位符为hosts文件添加新的域名定位数据,具体命令如下:
echo 10.0.2.2 android-scripting.googlecode.com >> /system/etc/hosts
echo 10.0.2.2 php-for-android.googlecode.com >> /system/etc/hosts
当模拟器访问android-scripting.googlecode.com和php-for-android.googlecode.com域名时,其将转向访问IP为10.0.2.2的PC电脑,Android模拟器会自动将PC电脑IP设置为10.0.2.2(等同于PC本机的IP地址127.0.0.1)。如果要使修改后的配置在重启模拟器后仍然有效,则需要先设置模拟器的Snapshot属性,置值为Enabled。
2.4安装SL4A和PFA组件
要在模拟器上安装SL4A和PFA组件,可在Windows命令窗口中输入adb命令实现,具体如下:
adb install sl4a_r6.apk
adb install phpforandroid_r1.apk
在模拟器中单击PFA图标进入安装界面并单击“Install”按钮,将自动进行PFA第二次安装。图3对PFA二次安装正常和异常状态进行了比较。其中,图3(a)是在文本方法支持下正常安装解压过程,图3(b)是未在本文方法支持下,网络问题造成PFA在等待下载,网络超时后将导致安装失败。
2.5测试运行环境
在Android中点击SL4A图标进入SL4A管理器,能看到系统默认安装好的PHP实例,其结果如图4所示。点击文件“hello_world.php”图标运行脚本,如果跳出对话框则说明Android PHP运行环境搭建成功,运行结果如图5所示。
3结语
本文方法对开发人员具有简单、快速和稳定等优点,大大降低了Android PHP应用开发初学者的学习难度。但不足的是,本文方法面向普通用户表现出复杂度高等问题,下一步的工作是面向普通用户降低环境搭建难度。
参考文献参考文献:
[1]R J MATTHEWS.API reference (release R6) [EB/OL]. http://code.google.com/p/androidscripting/wiki/ApiReference,2015110.
[2]IROTEC. PHP for Android project(PFA)[EB/OL]. http://phpforandroid.net,2014121.
[3]邢益良,裴云,陈敏. PHP Web和Android开发入门与实践[M]. 北京:清华大学出版社,2014.
[4]SERVKIT.PHPow是什么[EB/OL].http://servkit.org, 2015110.
责任编辑(责任编辑:杜能钢)
随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/2/6 6:48:45