PHP開發Android應用程式

來源:互聯網
上載者:User

第一部分是指在Android系統的手機上直接寫PHP指令碼代碼並立即運行;
第二部分則繼續講解如何把寫好的PHP指令碼代碼打包成akp安裝檔案。

首先,在手機上安裝兩個apk包。

一個是SL4A(Scripting Layer for Android),這個是Android的指令碼環境,前身是ASE(Android Scripting Environment),Android系統上的所有指令碼都將在這個環境下執行,下載地址:sl4a_r3,下載後將副檔名改為.akp即可,也可以到Google官方下載http://code.google.com/p/android-scripting/downloads/list。(註:如果你只關注第二部分可跳過這裡)
另一個是PFA(PHP for Android),這個是為Android系統提供PHP指令碼支援的安裝包,下載地址:PhpForAndroid_r1,同樣地下載後將副檔名改為akp即可,官方下載http://phpforandroid.net/start。

 

運行SL4A,介面如下:

 

這裡提供了一些執行個體,我們執行hello_world.php試試:

 

選擇第二個選項,運行結果如下:

 

 

指令碼已成功執行了。
我們自己建立一個指令碼試一下:

我們把第四行的$droid->getInput修改為dialogGetInput(因為PFA的某一次版本更新後在API裡面用dialogGetInput取代了getInput):

選擇API Browser可以看到所有提供我們使用的API:

 

菜單上選擇Save & Run,運行結果如下:

好了,第一部分至此完成。

如何將PHP指令檔打包成apk安裝包呢,本人蔘考了Google官方提供的步驟(http://code.google.com/p/android-scripting/wiki/SharingScripts)並搜集了網上其他的一些相關教程,總結如下:

 

一、搭建好Android開發環境(jdk+eclipse+android sdk)。
說明:由於本人沒接觸過java,也是第一次使用eclipse,講解若有幼稚的地方高手不要見笑哈。

 

1、下載java JDK,進入該網頁http://java.sun.com/javase/downloads/index.jsp(或者直接點擊下載)如下圖:

 

選擇 Download JDK 只下載JDK,無需下載jre,然後安裝完成即可,無需配置環境變數(可在命令列執行java -version驗證一下)。

 

2、下載eclipse,進入該網頁http://www.eclipse.org/downloads/(或者直接點擊下載)如下圖:

 

我們選擇第一個(即eclipse IDE for java EE Developers),下載完成後解壓即可。

 

3、下載Android SDK,這裡有兩種下載版本,一種是包含了具體版本的SDK,一種是只包含升級工具而不包含具體的SDK版本,推薦使用後一種,這裡也是以後一種為例進行講解的,進入該網頁http://androidappdocs.appspot.com/sdk/index.html(或者直接點此下載)如下圖:


我們這裡當然是選擇最上面Windows平台的,下載完成後解壓即可。

4、配置開發環境:

(1)、安裝Android開發外掛程式,開啟Eclipse,在功能表列上選擇 help->Install New SoftWare 出現如下介面:

點擊 Add 按鈕,出現如下介面:

 

Name:Android (這裡可以自訂),Location:https://dl-ssl.google.com/android/eclipse/(如果出錯,將https改成http即可),點擊OK,將出現如下介面:

點擊 Next 按鈕,出現如下介面:

 


(註:如果使用了不正確的eclipse版本,這裡很有可能出錯)

點擊Next按鈕,出現如下介面:

 

選擇 I accept the terms of the license agreements   點擊 Finish ,進入安裝外掛程式介面:

安裝完成後,出現如下介面:

點擊Yes按鈕,重啟eclipse。

(2)、配置Android SDK,點擊菜單 Window -> preferences,進入如下介面:

 

選擇你的Android SDK解壓後的目錄,選錯了就會報錯,這個是升級工具,目前還沒有一個版本的SDK。

升級SDK版本,選擇菜單 Window -> Android SDK and AVD Manager 出現如下介面:

 

選擇 update all 按鈕,出現如下介面:

 

 

選擇左邊的某一項,點擊accept表示安裝,點擊reject表示不安裝,我們這裡只選了 SDK 2.1 和 samples for api 7 ,自己可以任意自訂,確定後,選擇install按鈕,進入安裝介面如下:

 

 

安裝完成如下:

建立AVD(android vitural device),和上面一樣,進入Android SDK and AVD Manager,選中Vitural Devices :

 

點擊New按鈕後,進入如下介面:

名稱可以隨便取,target選擇你需要的SDK版本,SD卡大小自訂,點擊 Create AVD,得到如下結果:

 

如上顯示建立AVD完畢。

(3)、建立Android項目,選擇菜單 file -> new -> other 進入如下介面:

選擇建立 Android Project 項目,點擊Next按鈕,進入如下介面:

 

 

名稱自訂,應用程式名稱自訂,包名必須包含一個點以上,min SDK version裡面必須輸入整數。

點擊 Finish 出現如下介面:

 

註:若有錯誤如:Project … is missing required source folder: ‘gen’ ,則將 gen -> Android.Test -> R.java 這個檔案刪掉,Eclipse會為我們重建這個檔案,並且不會報錯。

 

(4)、配置運行,右鍵項目 -> Run as -> Run Configuration 進入如下介面:

該介面選擇啟動並執行AVD,將AVD前面的方框設定為選擇狀態。

(5)、測試專案運行,右鍵項目名稱 -> run as -> Android Application 即可啟動運行該Android程式,如下所示:

正在進入

 

 

測試程式運行結果

該測試程式的apk安裝包已經自動產生在項目工程目錄的bin子目錄下了。

 

至此,Android開發環境配置完畢。

 

二、使用已搭建好的Android開發環境將指令檔打包為apk安裝包。

 

1、下載指令碼的模板工程,script_for_android_template,官方下載地址http://android-scripting.googlecode.com/hg/android/script_for_android_template.zip

2、匯入模板工程,開啟eclipse,在功能表列上選擇 File -> Import 出現如下介面:

 

選擇 Existing Projects into Workspace ,點Next進入如下介面:

選擇 Select archive file ,點擊Browse,找到剛才下載好的模板工程檔案即可,點擊Finish完成。

此時,如果控制台出現 Unable to resolve target ‘android-3′ 此類錯誤則說明API版本設定需要做調整了,開啟目錄下的 default.properties 檔案,如下:

 

由於我們這裡所使用的API版本為7,遂將裡面的 target=android-3 修改為 target=android-7 ,儲存,按右鍵模板工程選擇 Refresh 重新整理即可。

 

此時如果又出現 ERROR: Unable to open class file C:\eclipse\workspace\ScriptForAndroidTemplate\gen\com\dummy\fooforandroid\R.java: No such file or directory 這類錯誤,前面已經提到過解決辦法了,刪除這個R.java檔案即可,再次 Refresh 將出現 R.java was removed! Recreating R.java! ,至此該模板工程已成功匯入。

 

3、重新命名模板工程名及包名,按右鍵模板工程選擇 Rename 彈出如下視窗:

 

將名稱修改成自己所需要的,我這裡就暫且改為 ScriptForAndroidMyPhpTest 吧,點擊 OK 完成模板工程名的更改。

繼續按右鍵模板工程選擇 Android Tools -> Rename Application Package ,快顯視窗如下:

 

我這裡就修改成 com.pfatest 吧:

點擊 OK 出現如下介面:

 

 

點擊 Finish 彈出如下視窗:

 

 

點擊 Yes 完成包名的更改,同時eclipse會自動幫我們同步更新工程主目錄下AndroidManifest.xml檔案裡面的包名,否則我們就需要主動更新了。

4、把我們自己的PHP指令檔放入工程目錄下的res/raw目錄下,移除裡面模板內建的script.py,並同步修改src/com/dummy/fooforandroid/Script.java中指定指令碼名的這一行 public final static int ID = R.raw.script;  -> public final static int ID = R.raw.mytest;

 

 

儲存。

5、申明指令碼程式中用到的所有許可權,開啟AndroidManifest.xml檔案,在視窗下方選中AndroidManifest.xml以編輯源檔案的方式,如下圖所示:

 

預設已開啟了 android.permission.INTERNET 許可權,由於我的測試程式中用到了震動以及電話功能,所以還必須開啟 android.permission.VIBRATE 和 android.permission.CALL_PHONE 這兩個許可權,開啟方法:將 <uses-permission
android:name=”android.permission.x”/> 前後的注釋<!–*–>去除即可,如下:

 

儲存。

6、編譯、打包、運行,還是按右鍵工程名,選擇 Run As -> Run Configurations… 開啟回合組態視窗:

 

在列表中選中我們需要啟動並執行模擬器,點擊下面的 Run 運行。

至此大功告成,手上有機器的朋友不妨將bin目錄下已產生好的apk包拷貝到手機上安裝運行試試看。



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.