Volley框架网络访问String,JsonObject,JsonArray

2024-05-03 03:38

本文主要是介绍Volley框架网络访问String,JsonObject,JsonArray,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

首先需要下载volley.jar

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.liuyazhou.myapplication"><uses-permission android:name="android.permission.INTERNET" /><applicationandroid: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>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context="com.example.liuyazhou.myapplication.MainActivity"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Hello World!"android:id="@+id/textView" /><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="点击"android:id="@+id/button"android:layout_below="@+id/textView"android:layout_centerHorizontal="true"android:layout_marginTop="47dp" />
</RelativeLayout>
package com.example.liuyazhou.myapplication;import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.VolleyLog;
import com.android.volley.toolbox.JsonArrayRequest;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;public class MainActivity extends Activity {private Button button1;private TextView textView1;private String urlJsonObj = "http://api.androidhive.info/volley/person_object.json";private String urlJsonArry = "http://api.androidhive.info/volley/person_array.json";private static String TAG = MainActivity.class.getSimpleName();private String jsonResponse;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button1 = (Button) findViewById(R.id.button);textView1 = (TextView) findViewById(R.id.textView);button1.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {textView1.setText("你好,第一个Android程序!");fun();funJsonObjectRequest();funJsonArrayRequest();}});}//onCreatepublic void fun() {RequestQueue mQueue = Volley.newRequestQueue(MainActivity.this);/cityname需要是转码后的,不能用中文StringRequest stringRequest = new StringRequest("http://op.juhe.cn/onebox/weather/query?cityname=%E8%92%99%E5%9F%8E&dtype=&key=*****7942cbdcff19a08001",new Response.Listener<String>() {///需要自己申请key,这里随便一个网址都行,@Overridepublic void onResponse(String response) {Log.i("成功Listener-TAG", response);}},new Response.ErrorListener() {@Overridepublic void onErrorResponse(VolleyError error) {Log.e("失败ErrorListener-TAG", error.getMessage(), error);}});mQueue.add(stringRequest);}public void funJsonObjectRequest() {RequestQueue mQueue = Volley.newRequestQueue(MainActivity.this);JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.GET,urlJsonObj, null, new Response.Listener<JSONObject>() {@Overridepublic void onResponse(JSONObject response) {Log.i("JsonObject-成功-TAG", response.toString());try {String   name = response.getString("name");String email = response.getString("email");JSONObject phone = response.getJSONObject("phone");String home = phone.getString("home");String mobile = phone.getString("mobile");jsonResponse = "";jsonResponse += "Name: " + name + "\n";jsonResponse += "Email: " + email + "\n";jsonResponse += "Home: " + home + "\n";jsonResponse += "Mobile: " + mobile + "\n";Log.i("JsonObject-成功:", jsonResponse);} catch (JSONException e) {e.printStackTrace();Toast.makeText(getApplicationContext(),"Error: " + e.getMessage(),Toast.LENGTH_LONG).show();}}}, new Response.ErrorListener() {@Overridepublic void onErrorResponse(VolleyError error) {VolleyLog.d(TAG, "Error: " + error.getMessage());Toast.makeText(getApplicationContext(),error.getMessage(), Toast.LENGTH_SHORT).show();}});mQueue.add(jsonObjReq);}//funJsonpublic void funJsonArrayRequest() {RequestQueue mQueue = Volley.newRequestQueue(MainActivity.this);JsonArrayRequest jsonArrayReq = new JsonArrayRequest(urlJsonArry,new Response.Listener<JSONArray>() {@Overridepublic void onResponse(JSONArray response) {Log.d(TAG, response.toString());try {jsonResponse = "";for (int i = 0; i < response.length(); i++) {JSONObject person = (JSONObject) response.get(i);String name = person.getString("name");String email = person.getString("email");JSONObject phone = person.getJSONObject("phone");String home = phone.getString("home");String mobile = phone.getString("mobile");jsonResponse += "Name: " + name + "\n";jsonResponse += "Email: " + email + "\n";jsonResponse += "Home: " + home + "\n";jsonResponse += "Mobile: " + mobile + "\n";}Log.i("JsonArray-成功:", jsonResponse);} catch (JSONException e) {e.printStackTrace();Toast.makeText(getApplicationContext(),"Error: " + e.getMessage(),Toast.LENGTH_LONG).show();}}}, new Response.ErrorListener() {@Overridepublic void onErrorResponse(VolleyError error) {VolleyLog.d(TAG, "Error: " + error.getMessage());Toast.makeText(getApplicationContext(),error.getMessage(), Toast.LENGTH_SHORT).show();}});mQueue.add(jsonArrayReq);}
}//MainActivity




这篇关于Volley框架网络访问String,JsonObject,JsonArray的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/955759

相关文章

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依

本地搭建DeepSeek-R1、WebUI的完整过程及访问

《本地搭建DeepSeek-R1、WebUI的完整过程及访问》:本文主要介绍本地搭建DeepSeek-R1、WebUI的完整过程及访问的相关资料,DeepSeek-R1是一个开源的人工智能平台,主... 目录背景       搭建准备基础概念搭建过程访问对话测试总结背景       最近几年,人工智能技术

Ollama整合open-webui的步骤及访问

《Ollama整合open-webui的步骤及访问》:本文主要介绍如何通过源码方式安装OpenWebUI,并详细说明了安装步骤、环境要求以及第一次使用时的账号注册和模型选择过程,需要的朋友可以参考... 目录安装环境要求步骤访问选择PjrIUE模型开始对话总结 安装官方安装地址:https://docs.

java中不同版本JSONObject区别小结

《java中不同版本JSONObject区别小结》本文主要介绍了java中不同版本JSONObject区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录1. FastjsON2. Jackson3. Gson4. org.json6. 总结在Jav

解读静态资源访问static-locations和static-path-pattern

《解读静态资源访问static-locations和static-path-pattern》本文主要介绍了SpringBoot中静态资源的配置和访问方式,包括静态资源的默认前缀、默认地址、目录结构、访... 目录静态资源访问static-locations和static-path-pattern静态资源配置

Java访问修饰符public、private、protected及默认访问权限详解

《Java访问修饰符public、private、protected及默认访问权限详解》:本文主要介绍Java访问修饰符public、private、protected及默认访问权限的相关资料,每... 目录前言1. public 访问修饰符特点:示例:适用场景:2. private 访问修饰符特点:示例:

IDEA如何将String类型转json格式

《IDEA如何将String类型转json格式》在Java中,字符串字面量中的转义字符会被自动转换,但通过网络获取的字符串可能不会自动转换,为了解决IDEA无法识别JSON字符串的问题,可以在本地对字... 目录问题描述问题原因解决方案总结问题描述最近做项目需要使用Ai生成json,可生成String类型

Python 标准库time时间的访问和转换问题小结

《Python标准库time时间的访问和转换问题小结》time模块为Python提供了处理时间和日期的多种功能,适用于多种与时间相关的场景,包括获取当前时间、格式化时间、暂停程序执行、计算程序运行时... 目录模块介绍使用场景主要类主要函数 - time()- sleep()- localtime()- g

使用Python实现批量访问URL并解析XML响应功能

《使用Python实现批量访问URL并解析XML响应功能》在现代Web开发和数据抓取中,批量访问URL并解析响应内容是一个常见的需求,本文将详细介绍如何使用Python实现批量访问URL并解析XML响... 目录引言1. 背景与需求2. 工具方法实现2.1 单URL访问与解析代码实现代码说明2.2 示例调用