android - 在android studio中解析Json
问题描述
我正在尝试使用 json 解析从 android 上的 php 服务器获取数据。这是我的android代码.....
我无法获取数据并收到一些错误,我在下面附上了屏幕截图。我无法弄清楚。
package com.example.ecogreen;
import android.os.AsyncTask;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class FetchData extends AsyncTask {
String fetched_data="",extracted="";
@Override
protected void onPostExecute(Object o) {
super.onPostExecute(o);
Features.data.setText(this.extracted);
}
@Override
protected Object doInBackground(Object[] objects) {
try {
URL url = new URL("https://192.168.0.197/?");
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
InputStream inputStream = httpURLConnection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
String line = "";
while(line != null){
line = bufferedReader.readLine();
}
JSONArray JA = new JSONArray();
for(int i =0 ;i < JA.length(); i++){
JSONObject JO = (JSONObject) JA.get(i);
fetched_data = "Temperature" + JO.getString("temprature") + "\n" +
"moisture1" + JO.getString("moisture1") + "\n" +
"humidity" + JO.getString("humidity") + "\n" +
"moisture2" + JO.getString("moisture2") + "\n" ;
extracted = extracted + fetched_data + "\n";
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
}
我将这些数据放在数组中并编码为 json。它是这样显示的:
这是我尝试获取时出现的错误:
Attempt to invoke virtual method 'void android.widget.TextView.SetText(java.lang.CharSequence)' on a null object reference
解决方案
检查您是否将 TextView 与 findViewById() 或您用于绑定视图的任何其他方法绑定
推荐阅读
- php - 对PHP文件角度的http请求出错
- facebook - 如何避免数百万用户的 Facebook Graph API 限制
- java - 如何在导航抽屉菜单中使用彩色图标?
- java - 将 DatePicker 中的数据添加到 DB Javafx
- c# - 我无法在浏览器上第二次玩浏览器游戏!C# WPF/WinForm
- delphi - 如何防止最小化应用程序最小化所有表单?
- python - Python中意外的复数
- android - 如何知道系统是否正在从 viewModel 中的 savedInstanceState 恢复
- sql-server - 在 SQL Server 中为一个实体存储一个月中的几天
- css - CSS浮动砌体