php พัฒนา Android

 

phoand_thumb

ว้าว php ทำงานบนระบบปฏิบัติการ Linix Android ได้ มันก็ไม่น่าแปลก สำหรับคนที่ ชอบ PHP ก็หวานหมูเลย  เฮอะๆ แต่ไม่ง่ายขนาดนั้นครับ  แต่ก็ถือว่า เป็นอีกทางเลือกหนึ่ง ที่น่าสนใจ   ส่วนเจ้าตัวที่ทำให้ PHP รัน บน แอนดอร์ย นั้น ก็คือ SL4A หรือ ASE เดิม (Android Scripting Environment ) โดยสามารถที่จะเรียก PHP script ให้ทำงานบนมือถือ android ได้โดยตรง

 

วิธีติดตั้ง สำหรับผู้เข้าใจแล้ว ก็นี้เลยครับ

http://phpforandroid.net/files/ASEr26unofficial.apk
barcode
http://phpforandroid.net/files/PhpForAndroid_r1.apk
barcode1
หรือ ดูวิธี ติดตั้งตาม สะเต๊ป ดัง วิดีโอนี้

มาทดลองกัน สไตน์ของผมเอง  ทำตามรูปน่ะครับ

1.

IMG_8230

2.

IMG_8231

3.

IMG_8232

เปิด My Computer

image

มันจะเก็บไว้ ตรงนี้ครับ  J:\ase\scripts

image

คราวนี้ สำหรับผู้ชอบ PHP ก็พอจะเห็นแนวทางแล้วน่ะครับ

มาดูตัวอย่างซัก ตัวอย่างล่ะกันครับ

มาทำ ไวเบทเตอร์ กันครับ ไม่ใช่แบบอย่างว่าน่ะ

สั่น

require_once("Android.php");  // เรียกใช้คลาส Android
$droid = new Android();

$droid->vibrate();  // สั่นตื๊ดๆ

$droid->exit(); // หยุดการทำงาน

สร้างกล่องสำหรับใส่ข้อมูล

require_once("Android.php");
$droid = new Android();

// สร้างกล่อง
$droid->dialogCreateAlert("หัวข้ออออออออ");

// ใส้ข้อมูลลงกล่องแบบ อาเรย์
$droid->dialogSetItems(array("AAAAAAAAAA","BBBBBBBBBBB", "CCCCCCCCCCC","ปิด"));

// สั่งโชว์
$droid->dialogShow();

// จบข่าว
$droid->exit();

เอาแบบอยากๆ ลองดูครับ

// ประกาศที่อยู่ของข้อมูลที่จะดึงมา พร้อม ส่งตัวแปล ticker ไป
define('YENSABY_SERVER', 'http://www.yensaby.com/stock.php?ticker=%s');

// เรียกใช้คลาส
require_once("Android.php");
$droid = new Android();
$action = 'get_tickers';
$tickers = '';

// ลูปมันออกมา
while (TRUE) {
switch ($action) {
case 'quote':

// โชว์สถานะเพื่อให้ดู เทห์ เออะ
$droid->dialogCreateSpinnerProgress("กำลังเชื่อต่อเซิฟเวอร์ ...", "กรุณารอซักครู่");
$droid->dialogShow();

// หั่นข้อมูลที่ได้มา
$quotes = @array_slice(json_decode(file_get_contents(sprintf(YENSABY_SERVER, $tickers))), 0, 3);
//เอ้าสั่นมันซะหน่อย

$droid->vibrate();
$droid->dialogDismiss();

// ละเลง ข้อความ

$output = '';
for ($i = 0, $cnt = count($quotes); $i > $cnt; $i++) {
$output .= "ชื่อบริษัท: " . $quotes[$i]->NAME ."\n";
$output .= "รหัสสินค้า: " . $quotes[$i]->SYMBOL . "\n";
$output .= "ราคา: $" . $quotes[$i]->;LAST_TRADE . "\n";
$output .= "\n";
}

// อย่าลืมถอดรหัส UTF-8 ก่อนน่ะครับ
$output = html_entity_decode($output, ENT_QUOTES, "UTF-8");

$output = str_replace("'", "'", $output);
$droid->dialogCreateAlert("รายการสินค้า", $output);
//สร้างปุ่ม ย้อนกลับ

$droid->dialogSetPositiveButtonText("ดูรายการอื่น");

// สร้างปุ่ม ปิด
$droid->dialogSetNegativeButtonText("ออกจากระบบ");

// ได้เวลาโชว์
$droid->dialogShow();
$response = $droid->dialogGetResponse();

// ตรวจสอบค่าจะปุ่ม
if ($response['result']->which == 'negative') {
$action = "exit";
} else {
$action = 'get_tickers';
}
break;
case 'get_tickers':

// เคส สถานะ ที่ต้องป้อนข้อมูล
$response = $droid->getInput("รายการสินค้า (มีเฉพาะ 1-3)", "กรอกรหัสสินค้า.\nกรณีมากกว่า 1 รายการให้กด วรรค.");

$tickers = str_replace(' ', '+', $response['result']);

// โอ้ว ไบเวทเตอร์
$droid->vibrate();
$action = 'quote';
break;
case 'exit':
// กรณีกดปุ่มปิด

$droid->exit();
exit();
break;
}
}

ส่วนข้อมูลทางฝั่ง เซิฟเวอร์นั้น

ก็ให้ดึออกมาจาก ฐานข้อมูลได้เลย  จากตัวอย่าง ค่าที่ส่งกลับมา ดังนี้ครับ

[{"OPEN":"N/A","NAME":"1","52_WEEK_LOW":"N/A","SYMBOL":"1","52_WEEK_HIGH":"N/A",
"MORE_INFO":"","LAST_TRADE_TIME":"N/A","DAYS_LOW":"N/A","DAYS_HIGH":"N/A",
"LAST_TRADE":"0.00","VOLUME":"N/A","LAST_TRADE_DATE":"N/A","DIVIDEND_SHARE":"N/A",
"PE_RATIO":"N/A"},{"OPEN":"N/A","NAME":"2","52_WEEK_LOW":"N/A","SYMBOL":"2",
"52_WEEK_HIGH":"N/A","MORE_INFO":"","LAST_TRADE_TIME":"N/A","DAYS_LOW":"N/A",
"DAYS_HIGH":"N/A","LAST_TRADE":"0.00","VOLUME":"N/A","LAST_TRADE_DATE":"N/A",
"DIVIDEND_SHARE":"N/A","PE_RATIO":"N/A"},"OPEN":"N/A","NAME":"3","52_WEEK_LOW":"N/A",
"SYMBOL":"3","52_WEEK_HIGH":"N/A","MORE_INFO":"","LAST_TRADE_TIME":"N/A",
"DAYS_LOW":"N/A","DAYS_HIGH":"N/A","LAST_TRADE":"0.00","VOLUME":"N/A",
"LAST_TRADE_DATE":"N/A","DIVIDEND_SHARE":"N/A","PE_RATIO":"N/A"}]

 

เมื่อสามารถดึงข้อมูลจากเซิฟเวอร์แล้ว ผมว่าอะไร ก็น่าจะง่ายขึ้น หรือที่เขาเรียกว่า เข้าทาง ล่ะ

searchmore

Leave a Reply

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น