以编程方式获取模块名称

3
我在Android Studio项目中添加了一个新的Google Cloud模块,用于创建后端servlet,我将其构建成WAR文件并部署到Jetty(或Google Cloud)。WAR文件的名称为<module-name>.war(例如backend.war)。当将WAR文件部署到Jetty时,servlet的URL为https://<server-fqdn>/<module-name>。Android客户端代码必须向该URL进行HTTP POST请求。如何在Android客户端代码中以编程方式获取servlet模块名称,以便可以访问servlet?即使稍后更改servlet模块名称,我也不想修改Android客户端Java代码以保持与后端servlet名称同步。
1个回答

2

模块名称仅在编译时可用。您无法在运行时以编程方式获取它们。相反,您需要一种在代码中指定URL的方法。一种方法是创建一个类,并使用public static final String来存储URL,使所有���要知道该URL的代码都可以访问它。


有没有一种方式可以让 Gradle 任务(或其他东西)将模块重命名为代码中指定的对象的值(例如公共静态常量字符串或 strings.xml 中的字符串资源)? - Matthew
@Matthew 是的,你可以使用Gradle在BuildConfig或资源中设置值。 - Code-Apprentice
好的,你如何使用Gradle来设置BuildConfig或资源中的值? - Matthew
@Matthew 如果你在谷歌上搜索“android gradle buildconfig”,你可能会比等我回答更快地找到答案。 - Code-Apprentice

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接