日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > php >内容正文

php

【转】独家教程:用PHP编写Android应用程序

發(fā)布時(shí)間:2024/9/5 php 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【转】独家教程:用PHP编写Android应用程序 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Google的開(kāi)源Android移動(dòng)操作系統(tǒng)正在席卷全球智能手機(jī)市場(chǎng),和蘋(píng)果不一樣,它對(duì)那些想將應(yīng)用程序提交到iPhone App Store的開(kāi)發(fā)人員有著嚴(yán)格的指導(dǎo)方針和要求,Google的Android平臺(tái)非常開(kāi)放,甚至還可以用PHP編寫(xiě)Android應(yīng)用程序,Irontech創(chuàng)建了一個(gè)運(yùn)行在Android上的PHP移植程序,結(jié)合Android的腳本層(Scripting Layer for Android,SL4A),你就可以構(gòu)建PHP Android應(yīng)用程序了。

在這篇文章中,我們將介紹如何安裝、配置和使用PHP for Android以及SL4A,51CTO會(huì)以一個(gè)簡(jiǎn)單的demo程序?yàn)槔M(jìn)行講解,如果你還不清楚怎么編寫(xiě)PHP Android應(yīng)用程序,那么請(qǐng)跟我來(lái)吧!

安裝PHP for Android

安裝PHP for Android的前提是,你要有一支安裝了Android 1.5或更高版本的手機(jī)或模擬器,并在“應(yīng)用程序設(shè)置”下打開(kāi)“未知源”,設(shè)置好后,你就可以安裝SL4A環(huán)境和PHP for Android APK了。

安裝SL4A是相當(dāng)簡(jiǎn)單的,但在安裝完P(guān)HP for Android后,你需要再次安裝它以便安裝完它的所有功能,安裝期間如果遇到麻煩,這里有一個(gè)視頻演示。

設(shè)置PHP for Android開(kāi)發(fā)環(huán)境

從理論上說(shuō),一旦你安裝好PHP for Android后,就可以開(kāi)始編寫(xiě)PHP Android應(yīng)用程序了,但它并不能很好地工作,你應(yīng)該下載Android SDK,創(chuàng)建一個(gè)模擬器,然后才是用你喜歡的編輯器寫(xiě)代碼。

?
PHP for Android

下載Android SDK,將其解壓到指定目錄,運(yùn)行tools目錄下的Android程序創(chuàng)建一個(gè)模擬器,從Android SDK和AVD管理器菜單中,選擇“虛擬設(shè)備”,點(diǎn)擊“新建”按鈕,給模擬器取個(gè)名字(如Droid2),選擇目標(biāo)平臺(tái)Android 2.2,SD卡大小輸入10MB,最后點(diǎn)擊“創(chuàng)建AVD”。

創(chuàng)建好Droid2模擬器后,點(diǎn)擊“開(kāi)始”按鈕,這里會(huì)有點(diǎn)小麻煩,因?yàn)槟悴荒苤粡?fù)制文件到虛擬設(shè)備,還需要設(shè)置,你必須設(shè)置端口轉(zhuǎn)發(fā),使用一個(gè)叫做adb的程序?qū)⒛愕腜HP腳本推到虛擬設(shè)備,adb是Android SDK的一部分,它也位于tools目錄。

接下來(lái),你要在虛擬設(shè)備上啟動(dòng)一個(gè)服務(wù)器,然后將腳本發(fā)送到服務(wù)器,下面的步驟將幫助你快速設(shè)置和運(yùn)行。

◆當(dāng)你的新虛擬設(shè)備運(yùn)行時(shí),轉(zhuǎn)到應(yīng)用程序屏幕,點(diǎn)擊“SL4A”。

◆在SL4A屏幕上,點(diǎn)擊“菜單”按鈕,選擇“視圖”,然后選擇“解釋器”。

◆再次點(diǎn)擊“菜單”按鈕,選擇“啟動(dòng)服務(wù)器”,并選擇“私有”。

◆向下拖動(dòng)Android通知欄,你應(yīng)該能看到SL4A服務(wù)(點(diǎn)擊這個(gè)服務(wù),注意你服務(wù)器監(jiān)聽(tīng)的端口號(hào),如47000)。

◆打開(kāi)一個(gè)shell或命令提示符,使用adb工具設(shè)置端口轉(zhuǎn)發(fā),例如,輸入命令“adb forward tcp:9999 tcp:47000”,用你的端口號(hào)替換47000。

◆設(shè)置AP_PORT環(huán)境變量,在Unix或Mac上,運(yùn)行“export AP_PORT=9999”,在Windows上,鍵入“set AP_PORT=9999”。

◆如果要在模擬器上測(cè)試你的腳本,你可以運(yùn)行“adb push my_script.php /sdcard/sl4a/scripts”,用你的腳本名替換“my_script.php”。

你也可以在真實(shí)的手機(jī)上進(jìn)行測(cè)試,為了使事情變得更簡(jiǎn)單,應(yīng)該設(shè)置一個(gè)ANDROID_HOME環(huán)境變量,指向Android SDK位置,并在Path中添加tools子目錄。

使用PHP構(gòu)建Android應(yīng)用程序

在設(shè)置好開(kāi)發(fā)環(huán)境后,編寫(xiě)一個(gè)PHP應(yīng)用程序在Android上運(yùn)行其實(shí)很簡(jiǎn)單,你只需要注意一件事,就是PHP for Android 包含的PHP版本是一個(gè)極其精簡(jiǎn)的版本,基本上只包含了核心的PHP函數(shù)和JSON支持,如果你對(duì)Java框架比較熟悉,你會(huì)發(fā)現(xiàn)SL4A沒(méi)有提供對(duì)你要使用的所有組件的訪問(wèn),使用Java開(kāi)發(fā)Android程序時(shí)這些組件都是可以使用的。

SL4A提供的是Android API的一個(gè)子集(SL4A全部方法列表見(jiàn)這里),使用PHP for Android你可以快速創(chuàng)建出程序原型,例如下面我用很短的代碼就實(shí)現(xiàn)了股票價(jià)格的展示和檢查。

  • <?phpdefine('QUOTE_SERVER',?'http://quoter.take88.com/?ticker=%s'); ?
  • require_once("Android.php"); ?
  • $droid?=?new?Android(); ?
  • $action?=?'get_tickers';$tickers?=?''; ?
  • while?(TRUE)?{????switch?($action)?{????case?'quote':$droid->dialogCreateSpinnerProgress("Querying?stock?information?server?...",?"Please?wait");$droid->dialogShow(); ?
  • $quotes?=?@array_slice(json_decode(file_get_contents(sprintf(QUOTE_SERVER,?$tickers))),?0,?3); ?
  • $droid->vibrate(); ?
  • $droid->dialogDismiss();//?Possible?data?points.//?"SYMBOL","NAME","LAST_TRADE","MORE_INFO","LAST_TRADE_DATE","LAST_TRADE_TIME","OPEN","DAYS_HIGH","DAYS_LOW","DIVIDEND_SHARE","PE_RATIO","52_WEEK_LOW","52_WEEK_HIGH","VOLUME"$output?=?'';for ?
  • ?($i?=?0,?$cnt?=?count($quotes); ?
  • ?$i?<?$cnt;?$i++)? ?
  • { ?
  • ????$output?.=?"Company:?"?.?$quotes[$i]->NAME?."\n"; ?
  • ????$output?.=?"Ticker:?"?.?$quotes[$i]->SYMBOL?.?"\n"; ?
  • ????$output?.=?"Last?trade:?$"?.?$quotes[$i]->LAST_TRADE?.?"\n"; ?
  • ????$output?.=?"\n"; ?
  • } ?
  • ????????$output?=?html_entity_decode($output,?ENT_QUOTES,?"UTF-8"); ?
  • //?Something?is?wrong?with?' ?
  • $output?=?str_replace("'",?"'",?$output); ?
  • $droid->dialogCreateAlert("Your?stock?quotes",?$output); ?
  • $droid->dialogSetPositiveButtonText("Get?new?quote"); ?
  • $droid->dialogSetNegativeButtonText("Exit"); ?
  • $droid->dialogShow(); ?
  • $response?=?$droid->dialogGetResponse(); ?
  • if?($response['result']->which?==?'negative')? ?
  • { ?
  • ????$action?=?"exit"; ?
  • } ?
  • ?else?{ ?
  • ????$action?=?'get_tickers'; ?
  • } ?
  • break; ?
  • ????case?'get_tickers':$response?=?$droid->getInput("Stock?Tickers?(max.?3)",?"Enter?Tickers.\nSeparate?with?spaces."); ?
  • $tickers?=?str_replace('?',?'+',?$response['result']); ?
  • $droid->vibrate(); ?
  • $action?=?'quote'; ?
  • break; ?
  • ????case?'exit':$droid->exit(); ?
  • exit(); ?
  • break; ?
  • ????} ?
  • } ?
  • ?>?
  • ?
  • 將上面的代碼保存為quoter4android.php文件,上傳到你的模擬器中,如果你的模擬器還沒(méi)有運(yùn)行,請(qǐng)先啟動(dòng)它,使用Android SDK tools目錄下的adb配置你的端口轉(zhuǎn)發(fā),并上傳quoter4android.php文件。

    如果要在你的模擬器中運(yùn)行應(yīng)用程序,轉(zhuǎn)到應(yīng)用程序屏幕,點(diǎn)擊SL4A圖標(biāo),再點(diǎn)擊quoter4android.php選項(xiàng)。

    如果要在你的手機(jī)上安裝quoter4android.php,你可以設(shè)置端口轉(zhuǎn)發(fā),通過(guò)USB將你的手機(jī)連接到電腦,將腳本復(fù)制到sl4a/scripts目錄更容易。但如果要在你的手機(jī)上運(yùn)行腳本,必須先拔掉USB線,否則當(dāng)你點(diǎn)擊SL4A圖標(biāo)時(shí)將看不到任何已安裝的腳本。

    你會(huì)發(fā)現(xiàn)上面代碼的第一行設(shè)置了一個(gè)常量QUOTE_SERVER,如果你已經(jīng)習(xí)慣了傳統(tǒng)的PHP Web應(yīng)用程序,你不必?fù)?dān)心如何分配你的代碼,也不必?fù)?dān)心未來(lái)的變動(dòng),現(xiàn)在我們要看在Android中它是如何工作的,你必須分配你真實(shí)的PHP代碼,因此,如果你決定將你的PHP Android應(yīng)用程序提交到Android Market,你可以硬編碼一個(gè)不受你控制的Web地址在其中,你的應(yīng)用程序?qū)?huì)按圖索驥。

    例如,前面這個(gè)股票程序?qū)嶋H上是從一個(gè)雅虎Web服務(wù)獲取的股票信息,而不是在Android程序中硬編碼直接訪問(wèn)雅虎的,我創(chuàng)建了一個(gè)簡(jiǎn)單的Web服務(wù),作為Android應(yīng)用程序和雅虎股票服務(wù)之間的連接,所以如果現(xiàn)在雅虎決定停止這項(xiàng)服務(wù),或是修改了訪問(wèn)方法,我可以只更新我在quoter.take88.com的Web服務(wù),Android代碼就不需要做任何改變了。此外,通過(guò)利用Web服務(wù),我可以讓一些復(fù)雜的Android應(yīng)用程序變得更簡(jiǎn)單,并且這樣可以使用完整的PHP功能,而不是一個(gè)精簡(jiǎn)版的功能,這里我用Perl編寫(xiě)了一個(gè)Web服務(wù)(使用mod_perl)。

    小結(jié)

    使用SL4A和PHP for Android你可以做很多事情,本文只談及了很表面的東西,這兩個(gè)項(xiàng)目都非常年輕,事實(shí)上,在我寫(xiě)本文時(shí),SL4A發(fā)布了一個(gè)新版本,隨著它們的成熟度越來(lái)越高,功能也會(huì)越來(lái)越強(qiáng)大。最后請(qǐng)記住,在任何情況下,請(qǐng)保持你的Android應(yīng)用程序小巧和緊湊。

    本文代碼下載:http://www.developer.com/img/2010/09/quoter4android.zip

    原文出處:http://www.developer.com/lang/php/article.php/3904261/Build-Your-First-PHP-for-Android-Application.htm

    原文名:Build Your First PHP for Android Application

    作者:Keith Vance

    轉(zhuǎn)載于:https://www.cnblogs.com/topcoderliu/archive/2011/04/24/2026124.html

    總結(jié)

    以上是生活随笔為你收集整理的【转】独家教程:用PHP编写Android应用程序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 久久精品一区二区在线观看 | 午夜国产福利在线 | 神马久久久久久久 | 国产精品av在线播放 | 亚洲图片小说视频 | 婷婷爱五月天 | 黄色高清视频在线观看 | 99热国产在线观看 | 中文字幕在线观看二区 | 久久综合伊人77777麻豆 | 亚洲精品午夜精品 | 日本成人免费网站 | 男女羞羞的视频 | 女同性做受全过程动图 | 国产成人无码一二三区视频 | 扶她futa粗大做到怀孕 | 一区二区在线影院 | 91中文字幕永久在线 | 91午夜交换视频 | 黄色成人在线视频 | 精品乱子伦一区二区三区 | 欧美脚交| 欧美日韩一区二区三区电影 | 久久精品一区二区三区四区 | 中文精品一区二区三区 | 日韩特级毛片 | 久久久久一| 久久午夜夜伦鲁鲁一区二区 | 日本妇乱大交xxxxx | 国产伦精品一区三区精东 | 欧美日韩免费做爰视频 | 黄色aaa大片 | 亚洲春色一区二区三区 | 国产精品免费一区 | 一本到在线视频 | 操人视频免费看 | 亚洲精品视频在线观看免费 | 久久亚洲精品石原莉奈 | 欧美成a | 成人拍拍拍 | 在线亚洲网站 | 在线免费观看视频黄 | 欧美激情视频一区二区三区不卡 | 看黄色一级片 | 少妇被黑人到高潮喷出白浆 | 中文字幕在线不卡 | 黄色aaaaa| 永久免费看片在线观看 | 福利片一区二区 | 国产精品久线在线观看 | 色哟哟在线视频 | 日本免费电影一区二区三区 | 久久无码视频一区 | 夜夜艹 | 日韩v | 亚洲国产毛片aaaaa无费看 | 天天爱天天操 | 天天综合视频 | 好吊妞精品视频 | 亚洲精品国产手机 | 六月激情网 | 欧美久久一区二区 | 91爱视频| 综合色在线观看 | 91精品免费在线 | 朝鲜美女黑毛bbw | 草莓巧克力香氛动漫的观看方法 | 女生扒开腿让男生操 | 国产浮力第一页 | 老司机精品视频网站 | 乖疼润滑双性初h | 久久青娱乐 | 韩国中文字幕在线观看 | 在线a免费 | 国产精美视频 | 午夜精品一区二区三区在线视频 | 全部免费毛片在线播放 | 日日躁夜夜躁 | av无码久久久久久不卡网站 | 91最新国产| 午夜在线视频观看 | 国产夫妻露脸 | 欧美风情第一页 | 亚洲色图视频在线观看 | 欧美日韩在线免费观看视频 | 天堂欧美城网站 | 九九视频在线免费观看 | 99re5| 简单av在线 | 亚洲加勒比 | 国产尤物视频在线 | 免费看一区二区三区 | 成人免费视频大全 | 鸥美毛片 | 91精品国产综合久久久蜜臀粉嫩 | 欲色视频 | 国产伦精品视频一区二区三区 | 懂色av一区二区三区免费 | 奇米影视久久久 |