当前位置: 首页 > 知识库问答 >
问题:

在Android中使用URI构建器或使用变量创建URL

邬阳
2023-03-14

我在开发一个Android应用程序。我需要为我的应用程序构建一个URI来发出API请求。除非有其他方法将变量放入URI中,否则这是我找到的最简单的方法。我发现您需要使用URI.Builder,但我不太确定如何使用。我的url是:

http://lapi.transitchicago.com/api/1.0/ttarrivals.aspx?key=[redacted]&mapid=value 

我的代码如下:

Intent intent = getIntent();
String value = intent.getExtras().getString("value");
Uri.Builder builder = new Uri.Builder();
builder.scheme("http")
    .authority("www.lapi.transitchicago.com")
    .appendPath("api")
    .appendPath("1.0")
    .appendPath("ttarrivals.aspx")
    .appendQueryParameter("key", "[redacted]")
    .appendQueryParameter("mapid", value);

我知道我可以执行URI.Add,但是如何将它集成到URI.Builder中呢?我应该添加uri.add(scheme)uri.add(authority)等内容吗?或者这不是做这件事的方法?另外,还有其他更简单的方法可以将变量添加到URI/URL中吗?

共有1个答案

谢鸿
2023-03-14

假设我想创建以下URL:

https://www.myawesomesite.com/turtles/types?type=1&sort=relevance#section-name

要使用URI.Builder构建此代码,我将执行以下操作。

Uri.Builder builder = new Uri.Builder();
builder.scheme("https")
    .authority("www.myawesomesite.com")
    .appendPath("turtles")
    .appendPath("types")
    .appendQueryParameter("type", "1")
    .appendQueryParameter("sort", "relevance")
    .fragment("section-name");
String myUrl = builder.build().toString();
 类似资料:
  • 如何包含来自构建的变量。AndroidManifest数据标记中的gradle。 我试过了 但是我收到了错误NullPointerException:没有键[数据]的记录

  • 我的问题是spring版本没有被识别为可变版本。那么我如何在字符串内部传递它呢?

  • 我在Android日食中使用 itext 创建 pdf 时遇到问题 如果给定了引导入口,我无法创建pdf,在我的情况下是Android 5.0.1。如果我删除了bootstrap条目,我可以创建pdf,但不能启动活动,因为android 5.0.1包含android jar。你能告诉我如何解决这个问题吗?同样,如果我把它变成一个非活动类,我希望能够在另一个活动类中创建一个非活动类的对象,这样我就可

  • 问题内容: 我认为这是另一个简单的问题,但是我无法使用任何Web解决方案。我的项目有一个版本号。每个数字都可以用“。”分隔。或“ _”。我想要一个仅显示前两个数字的变量。 我尝试编写一个普通的脚本来创建Jenkins环境变量。 我想使用前两位数字而不是整个字符串。 我是否正确执行此操作,甚至可以创建一个新的环境变量,并且对此有更好的解决方案吗? 问题答案: 以下groovy片段应传递版本(如您所提

  • 表名,excel文件路径,excel文件名是动态的(它是基于用户输入的)。我是SSIS的新手,我只使用过静态值。如何在SSIS中实现上述场景?

  • 问题内容: 我需要为我的项目创建一个自定义URI方案。即 -不透明的表示 -分层表示。 如何将方案添加到Java URI类?或者,如何使Java URI理解我的方案,以便可以在代码中使用它? 欢迎提供具体示例。 谢谢。 问题答案: 您确定需要创建一个新的URI方案吗? 创建特定于实现的方案被认为是不好的做法。 看到: http://infomesh.net/2001/09/urischemes h