ホームページ >バックエンド開発 >PHPチュートリアル >Androidはphpにアクセスしてjsonデータを取得します

Androidはphpにアクセスしてjsonデータを取得します

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-07-29 09:01:581207ブラウズ

Android プロジェクトでの作業は、データを取得するためにサーバーにアクセスすることと切り離すことができません。典型的な例としては、Android が JSON データを取得するために php にアクセスすることが挙げられます。インターネット上には同様の例がたくさんありますが、投稿されたコードはすべて同じであり、これは詐欺ではありませんか。

このプロジェクトを実行するには、Apache が提供する依存関係パッケージ (jar パッケージ) を使用する必要があります: ①httpclient ②httpcore ③http-mimi ④apache-mime4j

国際的な慣行: まず DEMO にアクセスし、ダウンロード アドレス: Android access php json データを呼び出すため

まず PHP での json データ形式について理解しましょう

$tnnowu = array(
		'username' => '灬抹茶灬',
		'password' => '666',
		'user_id' => 1
);
echo json_encode($tnnowu);

次に、Java コードを記述します


MainActivity.java
package com.cnwuth.getjson;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONObject;

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class MainActivity extends AppCompatActivity{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    private void startURLCheck(String username,String password)
    {
        HttpClient httpClient = new DefaultHttpClient();
        StringBuilder stringBuilder = new StringBuilder();

        HttpGet httpGet = new HttpGet("xxx.xxx.php");

        try
        {
            HttpResponse httpResponse = httpClient.execute(httpGet);
            BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(
                    httpResponse.getEntity().getContent()
            ));
            for (String s = bufferedReader.readLine();s!=null;s=bufferedReader.readLine())
            {
                stringBuilder.append(s);
            }
            JSONObject jsonObject = new JSONObject(stringBuilder.toString());
            String re_username = jsonObject.getString("username");
            String re_password = jsonObject.getString("password");
            int re_user_id = jsonObject.getInt("user_id");
            setTitle("用户ID_" + re_user_id);
            Log.v("url response" , "true=" + re_username);
            Log.v("url response" , "true=" + re_password);
        }
        catch (Exception e)
        {
            Log.v("url response" , "false");
            e.printStackTrace();
        }
    }
}

最後に、ネットワーク許可Data


AndroidMainifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.cnwuth.getjson">

    <uses-permission android:name="android.permission.INTERNET"/>

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

にアクセスするには、Sina Weibo

@武天昊TnnoWu
をフォローしてください。 上記では、Android が PHP にアクセスして json データを取得する方法を、関連する内容も含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。