Android——GSON解析JSON
发布日期:2021-05-25 13:00:36 浏览次数:24 分类:精选文章

本文共 2437 字,大约阅读时间需要 8 分钟。

添加 jar 包及网络权限配置

在开始编码之前,我们需要配置好项目依赖项,并为应用程序申请网络访问权限。具体步骤如下:

  • 添加 jar 包将以下 jar 文件添加到项目依赖项中:
    • com.squareup.okhttp3:okhttp:3.4.1
    • com.google.code.gson:gson:2.7

    这些库将帮助我们高效地处理网络请求及 JSON 数据解析。

    1. 配置网络权限在 AndroidManifest.xml 文件中添加网络访问权限声明:
    2. 此外,还需在 Android 6.0 及以上版本中,通过系统授权获取运行时权限。在代码中添加相应的权限申请:

      @Overridepublic void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {    super onRequestPermissionsResult(requestCode, permissions, grantResults);}
      1. 实体类定义创建一个 Java 实体类 User,用于映射 JSON 数据中的字段:
      2. public class User {    private String id;    private String name;    private String version;    public String getId() { return id; }    public void setId(String id) { this.id = id; }    public String getName() { return name; }    public void setName(String name) { this.name = name; }    public String getVersion() { return version; }    public void setVersion(String version) { this.version = version; }}
        1. 核心功能实现在 MainActivity 中实现数据发送及 JSON 解析功能:
        2. public class MainActivity extends AppCompatActivity implements View.OnClickListener {    private Button SendRequest;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        SendRequest = (Button) findViewById(R.id.SendRequest);        SendRequest.setOnClickListener(this);    }    @Override    public void onClick(View v) {        if (v.getId() == R.id.SendRequest) {            sendRequestToJson();        }    }    private void sendRequestToJson() {        try {            OkHttpClient client = new OkHttpClient();            Request request = new Request.Builder()                    .url("http://192.168.0.60:8888/data.json")                    .build();            Response response = client.newCall(request).execute();            String responseData = response.body().string();            parseData(responseData);        } catch (Exception e) {            e.printStackTrace();        }    }    private void parseData(String data) {        Gson gson = new Gson();        List
          userList = gson.fromJson(data, new TypeToken
          >() {}.getType()); for (User user : userList) { Log.d("ID:", user.getId()); Log.d("Name:", user.getName()); Log.d("Version:", user.getVersion()); } }}

          以上代码示例涵盖了从依赖管理到核心功能实现的完整开发流程。通过合理使用 OkHttp 和 Gson 库,以及正确配置网络权限,您可以轻松完成此应用的开发工作。

    上一篇:Android——通知(Notification)
    下一篇:Android——JSONObject解析JSON数据

    发表评论

    最新留言

    能坚持,总会有不一样的收获!
    [***.219.124.196]2025年04月23日 16时42分06秒