有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将Youtube标题从JSONObject获取为字符串

我需要获得Youtube视频的标题,但我似乎不知道如何将JSONObject从方法中提取出来并转换成字符串

public static String getTitleQuietly(String youtubeUrl) {
    try {
        if (youtubeUrl != null) {
            URL embededURL = new URL("http://www.youtube.com/oembed?url=" +
                    youtubeUrl + "&format=json"
            );

            return new JSONObject(IOUtils.toString(embededURL)).getString("title");
        }

    } catch (Exception e) {
        e.printStackTrace();
    }
    return null;
}

我试着做:

String x = getTitleQuietly("https://www.youtube.com/watch?v=4fkcTA7YX44");
            Toast.makeText(PostingGBDTutorial.this, x, Toast.LENGTH_SHORT).show();

将字符串参数切换为www.youtube.com/watch?v=4fkcTA7YX44,甚至视频的最后11个字符:4fkcTA7YX44

但什么也没有出现

Where i discovered the code


共 (1) 个答案

  1. # 1 楼答案

    有一个用于调用API并将JSON响应转换为Java对象的工具组合:Reformation 2和jsonschema2pojo

    http://www.jsonschema2pojo.org

    http://square.github.io/retrofit/

    这里我不会详细介绍如何使用它们,但有几个关键步骤

    1. 为每个API调用创建一个接口
    2. 使用改装库实例化接口
    3. 使用jsonschema2pojo生成pojo对象以进行反序列化
    4. 在接口中调用该方法,并在回调中检索反序列化对象

    祝你好运