【发布时间】:2017-09-20 11:40:56
【问题描述】:
当我将带有库 GSON 的 JSON 解析到我的微调器 android 时,我遇到了一些错误。错误是:
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: 应为 BEGIN_OBJECT 但在第 1 行第 1 列路径 $
当我点击 log cat android studio 时:
代码行错误spinnerData = Arrays.asList(mGson.fromJson(response, Set_jadwal[].class));
这是完整的我的源代码:
public class jadwal_Activity extends AppCompatActivity {
private String DATA_URL_KELAS = "http://smpn8pky.rf.gd/Json_kelas.php";
public static final String DATA_URL_JADWAL = "http://smpn8pky.rf.gd/Json_jadwal.php";
public List<Set_jadwal> spinnerData;
private RequestQueue queue;
Spinner spinner;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_jadwal);
queue = Volley.newRequestQueue(this);
requestJsonObject();
}
private void requestJsonObject() {
RequestQueue queue = Volley.newRequestQueue(this);
StringRequest stringRequest = new StringRequest(Request.Method.GET, DATA_URL_KELAS, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
GsonBuilder builder = new GsonBuilder();
Gson mGson = builder.create();
spinnerData = Arrays.asList(mGson.fromJson(response, Set_jadwal[].class));
//display first question to the user
if(null != spinnerData){
spinner = (Spinner) findViewById(R.id.spiner_kelas);
assert spinner != null;
spinner.setVisibility(View.VISIBLE);
SpinnerAdapter spinnerAdapter = new SpinnerAdapter(jadwal_Activity.this, spinnerData);
spinner.setAdapter(spinnerAdapter);
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});
queue.add(stringRequest);
}
这是我的json回复JSON RESPON的链接
【问题讨论】:
-
response包含什么?我怀疑你得到了一些不是 json 的文本。 -
你是什么意思,我有点不太懂。我想将该 json 解析为我的微调器。我必须做什么我的代码???
-
阅读我的回答。这不是您的代码的问题,而是您的虚拟主机的问题。
-
哦,对不起,我现在明白了。谢谢你的回答。