本文引用自PHP程式師《【轉】在Android上用PHP編寫應用- PFA初探》

作者:蔣宇捷(hfahe)
 
概述

Android上的主要開發語言是Java,讓很多PHPer覺得非常遺憾。但是自從ASE(Android Scripting Environment-Android腳本環境)誕生後,允許使用者直接在Android設備上運行腳本,ASE已經支援Python、Lua和BeanShell、Perl等指令碼語言。ASE的實現原理其實和OMS的BAE(Browser based Application Engine)平臺比較類似。可以在http://code.google.com/p/android-scripting/找到ASE相關的內容和API清單。
 
901282875429535662.gif  
以下功能都可以通過ASE的介面方便的實現。

u 發送通話請求

u 發送文字資訊

u 掃描條碼

u 獲取GPS資訊

u 使用語音服務

隨著PFA的出現,在Android上用PHP編寫應用和工具變成了現實。它為ASE提供了PHP的支援,官方網站見:http://phpforandroid.net/
3362500071786404324.gif  
下麵我將以Android模擬器為例,介紹在Android平臺上實現PHP簡單應用的完整過程。

模擬器安裝

注意:首先需要安裝JDK-V5.0以上版本,因為android-sdk使用JAVA語言開發的。


Android模擬器允許你在電腦上使用Android環境,支援Windows、Linux、Mac等平臺,下麵以Windows平臺為例。

先需要從http://dl.google.com/android/android-sdk_r04-windows.zip下載Android SDK,解壓縮並運行裡面的SDK Setup.exe,這會打開Android SDK and AVD Manager。

啟動後會遇到一個錯誤,需要在Settings的Misc配置裡將“Force https://...sources to be fetched using http://”選上。
3712654942813781520.gif  
重啟Android SDK and AVD Manager,然後在出現的“choose Packages to Install”介面上選擇“SDK Platform Android 2.1-update1,API 7,revision 2”(2.0和2.1的版本也可以)。記住一定要把其他的選項都按兩下打上叉,否則從國外網站下載安裝所有的Package是非常慢的事情!
3720254767184970626.gif  
然後選擇“Accpet”並Install。

安裝成功後,找到tools目錄中的android.bat檔,運行該檔我們就可以創建一個Android虛擬裝置了。

點擊Virtual Devices,選擇最右邊的New選項。在出現的對話方塊裡填入以下內容:
3869999454794962628.gif  
虛擬裝置創建成功後,選擇這個設備並點擊右邊的Start啟動它。在出來的“Launch Options”上不要選擇任何選項,然後點擊Launch。
1478306577686169749.gif  
等待一些時間後,系統啟動完畢。介面如下所示,這就是標準的Android系統介面。
3404721318293030563.gif  
ASE和PFA的安裝

我們先在PFA的官方網站(http://www.phpforandroid.net/)上下載ASE(http://phpforandroid.net/files/ASEr26unofficial.apk)和PFA(http://phpforandroid.net/files/PhpForAndroid_r1.apk),其中ASE是他們修改過的非官方的版本。

在模擬器上安裝Android上的應用程式需要用到adb-Android Debug Bridge,Android SDK裡的一個工作,它可以管理Android模擬器或者真實的Android手機。它的主要功能有:

u 安裝apk軟體到模擬器或者Android手機

u 在電腦和Android設備之間上傳或下載檔案

u 管理模擬器或手機的埠映射

u 運行設備的Shell

這個工具在Android SDK目錄下的tools目錄裡,我們將下載回來的ASE和PFA也放置在這兒。

打開命令提示符執行如下命令,將ASE和PFA安裝到模擬器上:
 
 
3373759070854785118.gif  
切換到模擬器,點擊主螢幕最下方的按鈕顯示應用程式清單,可以看到ASE和PFA已經安裝。
 
3757409464110700205.gif  
點擊PFA的圖示運行PFA,然後點擊頂部的Install按鈕,開始下載PHP的library和Demo。
1531786823259766416.gif  
 
 
下載安裝完畢後,關閉PFA,運行ASE,已經可以看到一些PHP的Example程式。
2271503062056775090.gif  
運行PHP程式

點擊其中任何一個程式都可以直接運行。我們點擊hello_world.php程式,開始執行程式,彈出一個對話方塊,我們在裡面輸入一個字串。
 
 
2229844765503152401.gif  
 
 
程式的運行結果將在螢幕上顯示。
 
3748965214809379997.gif  
 
另外一個程式的運行結果如下圖所示。
 
 
3298323777096862991.gif  
 
 
查看和編寫PHP程式

我們有兩種方式編寫和查看PHP程式。

1、第一種方式是是用adb,將程式下載到電腦中,還可以將編寫好的程式上傳到Android設備上。這種方式適合熟悉在電腦程式設計的朋友(在模擬器上程式設計是一件非常痛苦的事情,使用手機也不是一個非常方便的選擇)。

按照如下方式執行adb命令,可以方便的連接到Android模擬器上。1595963117951114836.gif  
PHP程式放置在sdcard/ase/scripts目錄下,我們進入此目錄。
 
1613133091530684551.gif  
 
其中的檔就是我們剛才看到的PHP示常式序,我們可以用adb pull命令從設備上下載這些檔。
 
3374603495784917085.gif  
 
 
這些檔已經下載在tools目錄下了,我們可以打開,查看並編輯這些檔。例如hello_world.php內容如下所示。

<?php

require_once("Android.php");

$droid = new Android();

$name = $droid->getInput("Hi!", "What is your name?");

$droid->makeToast('Hello, ' . $name['result']);

我們將這個檔稍加修改,將最後一句改為:

$droid->makeToast('Hello, I love ' . $name['result'] );

並將檔案名修改為hello_world2.php,再使用adb push將此檔上傳到設備。
2203667592669274524.gif  
 
已經可以在ASE的介面裡看到hello_world2.php程式了,點擊運行。
 
 
4819414551239873112.gif  
 
運行結果如下圖所示。
 
3198963110316962080.gif  
 
 
2、第二種方式是直接在手機上查看、編輯程式。

運行程式完畢後,點擊Menu鍵會出現ASE的功能表。
 
 
3870843879725094617.gif  
 
 
點擊Exit & Edit可以進入編輯模式。
 
 
1396115884486622655.gif  
 
此時點擊Menu按鈕會再次出現功能表,裡面會有我們常用到的API Browser,裡面包含了API清單,包括常用的dialogShow、makeToast、checkScreenOn等等。
 
2200289892948535688.gif  
 
 
下麵我們添加一個應用程式。在ASE主介面點擊Menu按鈕,出現主功能表。點擊上面的Add按鈕。
 
3353492872531664165.gif  
在編輯器模式裡輸入檔案名和代碼。
3364470396623379429.gif  
 
 
 
 
然後即可運行該應用程式。
1588081818602846475.gif  
打包

以上介紹了在Android平臺上如何編寫簡單的應用程式,但是如何將這些PHP程式打包為可安裝的apk檔呢?SL4A專案可以解決這個問題,但是它沒有正式發佈,到可用的程度還需要一段時間。我們還需要耐心等待,我會隨時關注並介紹這個專案的進展。

總結

文章介紹了如何使用PHP在Android平臺上進行簡單應用程式的開發,深入的部分會在後繼進行介紹。
arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()