android取得json數據
步驟一:頁面返回JSON資料。
對本空間日誌「php和AJAX的簡單實作」的json.php程式碼做一些簡單修改,程式碼如下:將程式碼echo $_GET['jsoncallback'].'('.custom_json::encode($big_test). ')';
改為echo $_GET['jsoncallback'].custom_json::encode($big_test);
將檔案另存為jsondata.php。
步驟二:編寫Android程式碼。
1.寫Contact類,設定set和get方法。
package com.domain;
public class Contact {
private String name;
private int age;
private int sex; ing;
public Contact() { }
public Contact(String name, int age, int sex, Double height,
boolean is_human, String string) {
this.name = name; . height = height;
this.is_human = is_human;
this.string = string;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = 問題
}
public void setSex(int sex) {
this.sex = sex;
}
public Double getHeight() {
return height
}
public boolean isIs_human() {
return is_human;
}
public void setIs_human(boolean is_human) {
。
return string;
}
public void setString(String string) {
this.string = string;
}
}
2.寫出輸入流處理工具類別StreamTools。
package com.shao.utils;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
public class StreamTools {java.io.InputStream;
public class StreamTools {java.io.InputStream;
public class StreamTools { Streampobp. ByteArrayOutputStream outstream = new ByteArrayOutputStream();
byte[] buf = new byte[1024];
int len = 0 ;
while(( len = instream.read(buf)) !
while(( len = instream.read(buf)) != -1). 0, len);
}
byte[] data = outstream.toByteArray();//網頁的二進位資料
outstream.close();
}
3.編寫android佈局文件main.xml。
android:layout_width="fill_parent"
android:layout_height="fill_parent"
> ip"
android:layout_height="wrap_content"
/>
android:layout_width="fill_parent"
item. xml。
android:layout_width="fill_parent"
android:layout_height="fill_parent"
> ip"
android:layout_height="wrap_content"
/>
android:layout_width="100dip"
android:layout_height="wrap_content"
/>;
android:layout_width="100dip" 🜳ight7> View
android:id="@+id/height"
android:layout_width="100dip"
android:layout_height="wrap_content"
/>
/>
/>
在string.xml新增下列一行:
4.撰寫業務實作類別。
package com.shao;
導入java.io.InputStream;
導入java.net.HttpURLConnection;
導入java.net.URL;
導入java.util.ArrayList;
導入java.util.List;
導入org.json.JSONArray;
導入org.json.JSONObject;
導入com.domain.Contact;
導入com.shao.utils.StreamTools;
() 拋出Throwable
{
String path = "http://192.168.1.100:8080/WebContent/testjson/jsondata.php";
列表;聯絡人= new Array'sList>
URL url = 新URL(路徑);
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
conn.setConnectTimeout(5*1000);
conn.setConnectTimeout(5*1000);
conn.setConnectTimeout(5*1000); ();
byte[] data = StreamTools.readInputStream(instream);
String json = new String(data);
JSONArray 陣列= new JSONArray(json);
JSONArray 陣列= new JSONArray(json);
JSONArray 陣列= new JSONArray(json);
for );i++)
{
JSONObject item = array.getJSONObject(i);
聯絡人contact = new Contact(item.getString("姓名"),item.getInt("年齡"),IntemContact(item.getString("姓名"),item.getInt("年齡"),IntemIntem. ),item.getDouble("身高"),item.getBoolean("is_ human" ),item.getString("string"));
contact.add(contact);
}
} .
}
5.編寫主Activity類別。
package com.shao;
導入java.util.ArrayList;
導入java.util.HashMap;
導入java.util.List;
Activity導入.domain.Contact;
導入android.os.Bundle;
導入android.util.Log;
導入android.widget.ListView;
導入android.widget.SimpleAdapter;
導入android.widget.Toast;widget.SimpleAdapter;
導入android.widget.Toast; **在第一次創建活動時調用。*/
@Override
public void onCreate(Bundle savingInstanceState) {
main);
嘗試{
清單;聯絡人= MyService.getLastContact();
List
y ListView listview = (List
y ListView listview = (List
for(聯絡人聯絡人:聯絡人)
{
HashMap
it .put("it .put("性別",contact.getSex());
item.put("age", contact.getAge());
item.put("height ), contact.getHeight()); ("is_ human", contact.isIs_ human());
item.put("string", contact.getString());
資料.新增(項目);
}
new String[]{"姓名","性別","年齡", "身高","is_ human" ,"string"},
new int[]{R.id.name, R.id.sex, R.id.age, R.id.height, R.id.is_ human , R.id.string});
listview.setAdapter(適配器);
Toast.makeText( this, R.string.error, 1).show();
}
}
}
6.開啟網路功能。
步驟三測試。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

最近幾天,Ice Universe 不斷披露有關 Galaxy S25 Ultra 的詳細信息,人們普遍認為這款手機將是三星的下一款旗艦智慧型手機。除此之外,洩密者聲稱三星只計劃升級一台相機

OnLeaks 現在與 Android Headlines 合作,首次展示了 Galaxy S25 Ultra,幾天前,他試圖從他的 X(以前的 Twitter)粉絲那裡籌集到 4,000 美元以上的資金,但失敗了。對於上下文,嵌入在 h 下面的渲染圖像

除了發布兩款新智慧型手機外,TCL 還發布了一款名為 NXTPAPER 14 的新 Android 平板電腦,其大螢幕尺寸是其賣點之一。 NXTPAPER 14 採用 TCL 標誌性品牌霧面液晶面板 3.0 版本

Vivo Y300 Pro剛剛全面亮相,它是最薄的中階Android手機之一,配備大電池。準確來說,這款智慧型手機厚度僅為 7.69 毫米,但配備 6,500 mAh 電池。這與最近推出的容量相同

三星尚未就何時更新其 Fan Edition (FE) 智慧型手機系列提供任何提示。目前來看,Galaxy S23 FE 仍然是該公司的最新版本,於 2023 年 10 月年初推出。

最近幾天,Ice Universe 不斷披露有關 Galaxy S25 Ultra 的詳細信息,人們普遍認為這款手機將是三星的下一款旗艦智慧型手機。除此之外,洩密者聲稱三星只計劃升級一台相機

Redmi Note 14 Pro Plus 現已正式成為去年 Redmi Note 13 Pro Plus 的直接後繼產品(亞馬遜售價 375 美元)。正如預期的那樣,Redmi Note 14 Pro Plus與Redmi Note 14和Redmi Note 14 Pro一起成為Redmi Note 14系列的主角。李

OnePlus的姊妹品牌iQOO的2023-4年產品週期可能即將結束;儘管如此,該品牌已宣布 Z9 系列的開發尚未結束。它的最終版,也可能是最高端的 Turbo+ 變體剛剛按照預測發布。時間
