Android 與 PHP 之間的交互通常通過 HTTP 請求來實現。在 Android 端,你可以使用 HttpURLConnection、Volley、Retrofit 等類庫來發起 HTTP 請求;而在 PHP 端,你需要創建一個服務器端腳本(例如使用 Apache 服務器或 Nginx 服務器)來處理這些請求并返回相應的數據。
以下是一個簡單的 Android 與 PHP 交互的示例:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new Thread(new Runnable() {
@Override
public void run() {
try {
URL url = new URL("https://yourserver.com/your_php_script.php");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.connect();
int responseCode = connection.getResponseCode();
if (responseCode == HttpURLConnection.HTTP_OK) {
BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream()));
StringBuilder response = new StringBuilder();
String responseLine;
while ((responseLine = br.readLine()) != null) {
response.append(responseLine);
}
connection.disconnect();
// 處理響應數據
runOnUiThread(new Runnable() {
@Override
public void run() {
// 更新 UI 或處理響應數據
}
});
}
} catch (Exception e) {
e.printStackTrace();
}
}
}).start();
}
}
your_php_script.php
)來處理請求并返回數據:<?php
// 獲取請求參數
$param = isset($_GET['param']) ? $_GET['param'] : '';
// 處理數據(例如從數據庫中獲取數據)
$data = array('key' => 'value');
// 設置響應頭
header('Content-Type: application/json');
// 返回 JSON 數據
echo json_encode($data);
?>
在這個示例中,Android 端向 PHP 服務器發起一個 GET 請求,傳遞一個參數 param
。PHP 服務器接收到請求后,處理數據并返回 JSON 格式的響應。Android 端解析響應數據并在 UI 上顯示。