在 Android 中使用 Volley 提取数据
Extracting data using Volley in Android
我正在学习如何在 Android 应用程序中连接 API。我开始使用 Volley 在应用程序中显示 JSON 数据,但我不知道我在哪里做错了。我的 JSON 文件包含一个名称。
JSON 文件 link: http://www.mocky.io/v2/5e97251e3000006300b6dc2d
activity_main(.xml):
<TextView
android:id="@+id/text_view_result1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="24dp" />
MainActivity.java
public class MainActivity extends AppCompatActivity {
TextView text1;
RequestQueue mQueue;
String name;
String url = "http://www.mocky.io/v2/5e97251e3000006300b6dc2d";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// mTextViewResult = findViewById(R.id.text_view_result);
text1 = findViewById(R.id.text_view_result1);
Button buttonParse = findViewById(R.id.button_parse);
mQueue = Volley.newRequestQueue(this);
sendjsonrequest();
}
public void sendjsonrequest(){
JsonObjectRequest jsonObjectRequest= new JsonObjectRequest(Request.Method.GET, url, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
name=response.getString("name");
text1.setText(name);
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});
mQueue.add(jsonObjectRequest);
}
}
我已经测试了你的代码,它工作正常。您检查过您的 logcat 了吗? AndroidManifest.xml是否添加了上网权限?
<uses-permission android:name="android.permission.INTERNET" />
代码很好,有 0 个错误,我托管测试的网站出现了一些问题 JSON API。谢谢大家的帮助。
顺便说一下,只使用 https://www.npoint.io/ 来主持你的测试 JSON。
我正在学习如何在 Android 应用程序中连接 API。我开始使用 Volley 在应用程序中显示 JSON 数据,但我不知道我在哪里做错了。我的 JSON 文件包含一个名称。 JSON 文件 link: http://www.mocky.io/v2/5e97251e3000006300b6dc2d
activity_main(.xml):
<TextView
android:id="@+id/text_view_result1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="24dp" />
MainActivity.java
public class MainActivity extends AppCompatActivity {
TextView text1;
RequestQueue mQueue;
String name;
String url = "http://www.mocky.io/v2/5e97251e3000006300b6dc2d";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// mTextViewResult = findViewById(R.id.text_view_result);
text1 = findViewById(R.id.text_view_result1);
Button buttonParse = findViewById(R.id.button_parse);
mQueue = Volley.newRequestQueue(this);
sendjsonrequest();
}
public void sendjsonrequest(){
JsonObjectRequest jsonObjectRequest= new JsonObjectRequest(Request.Method.GET, url, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
name=response.getString("name");
text1.setText(name);
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});
mQueue.add(jsonObjectRequest);
}
}
我已经测试了你的代码,它工作正常。您检查过您的 logcat 了吗? AndroidManifest.xml是否添加了上网权限?
<uses-permission android:name="android.permission.INTERNET" />
代码很好,有 0 个错误,我托管测试的网站出现了一些问题 JSON API。谢谢大家的帮助。
顺便说一下,只使用 https://www.npoint.io/ 来主持你的测试 JSON。