gpt4 book ai didi

Android - 在应用程序客户端中管理服务器端点时遇到问题

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:46:02 24 4
gpt4 key购买 nike

我有以下服务器网址:

server-base-url/method1
server-base-url/method2
server-base-url/method3
...
server-base-url/method100

我目前正在使用属性文件来存储 URL。当我需要使用一些服务器 URL 时,我会读取属性文件并使用 Spring 4 Android 执行 http 请求

我知道这应该是另一种方式(也是一种更好的方式)来做到这一点。实现这一目标的最佳做法是什么?

最佳答案

我肯定会使用值作为字符串的 android 资源。所以你给它命名一次,并从 Android Studio 中获得强大的工具,通过 Locale、buildtype 和 flavor 进行定制和本地化……我只是建议在单独的文件中设置 url。即 urls.xml

    <resources>
<string name="url_server1">http://apipas.com/gloabl/server1</string>
<string name="url_server2">http://apipas.com/global/server2</string>
</resources>

对于简单的项目,这可能无关紧要。但是当您处理企业项目,或处理多个目标、多语言、不同服务器层(基于位置;欧盟/亚洲...,或使用情况)时:免费/付费,或阶段:开发/测试/生产),您选择何种方式来管理资源等资源至关重要。

让我详细说明...假设我们有这个应用程序的 build.gradle:

buildTypes {
debug {
debuggable false
applicationIdSuffix 'debug'
}
qa {
debuggable false
applicationIdSuffix 'qa'
}
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}

productFlavors {
paid {
applicationId = "com.apipas.android.wellmanagerurlsapp.paid"
}
free {
applicationId = "com.apipas.android.wellmanagerurlsapp.free"
}
}

它还支持 de 作为德语和澳大利亚 语言环境 en-rAU

所以我们有这些定制因素:

  • 风格:付费/免费(它可以是其他东西:CPU 架构、区域等)
  • BuildType:除了 Release 和 Debug 之外,我还添加了 QA 以使用测试服务器测试应用程序(如果可用)。
  • 语言环境:base、de 和 en-rAU

所有你需要做的就是在正确的位置覆盖 res 来满足你需要实现的目标

假设我要使用 buildType base 来自定义 URLS:

enter image description here

或者你会使用 Flavors:

enter image description here

同时使用 flavor 和 buildType 自定义 res 时注意不要重复掉。

在开发过程中,您不需要更改 url 的名称。当您有大型项目时,这确实是一个好点。您仍然可以针对任何风格/buildType/locale 轻松更改内容

您还可以使用 JSON、XML 或您提到的属性。但他们都不会给你 res 做什么。

祝你好运,'。

关于Android - 在应用程序客户端中管理服务器端点时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35726526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com