Existe uma maneira de usar .env variáveis no Android (Java), como fazemos em laravel?

UndercoverCoder:

Eu não sei se isso é off-topic, mas em Laravel, podemos definir variáveis em um .envarquivo, que pode, então, o acesso usando uma getenv()função de prevenção de codificação difícil em que pode não ser seguro.

Podemos fazer o mesmo no Android Studio (usando Java)? Como há algumas informações que eu código em vez não é difícil.

Espero que este sentimento marcas.

Tentei configurar as variáveis ​​em uma classe e acessá-los através da classe, mas eu sinto que há uma maneira melhor que é mais semelhante à forma como é feito em Laravel.

Aqui está o que eu estou fazendo agora, mas não é o que eu estou procurando:

public class EnvVariables {
    public final String API_KEY = "some API key";
    public final String API_ENDPOINT = "https://example.com/api/v1/endpoint";
}

Então eu usei essas variáveis ​​onde quer que eu precisava deles.

Isso faz o trabalho, mas a classe ainda é facilmente acessível, enquanto que um .envnão é (como não deve ser).

a_local_nobody:

O mais próximo (em minha opinião), temos de variáveis ambientais, seria buildConfigcampos, o que você faz em build.gradle, como este:

buildConfigField "String", "variable_name", "variable_value"

você faria algo assim:

 flavorDimensions "default"   
 productFlavors {
    dev {
buildConfigField "String", "SERVER_TEST", "\"http://192.618..\""
buildConfigField "String", "SERVER_MAIN", "\"https://68.5...\""
buildConfigField "String", "API_KEY", "dev API key"
    }
     prod {
buildConfigField "String", "SERVER_TEST", "\"http://192.618..\""
buildConfigField "String", "SERVER_MAIN", "\"https://68.5...\""
buildConfigField "String", "API_KEY", "prod API key"
    }

que você pode então acessar como este:

BuildConfig.API_KEY

ter um olhar para estes para mais informações:

Como gerar buildConfigField com tipo String

e isto para a criação de diferentes sabores:

https://developer.android.com/studio/build/build-variants


Como uma nota lateral, buildConfigcampos são utilizados para valores especificamente relacionadas com uma compilação particular ou um grupo de compilações, para a sua situação de querer chaves de API de loja é um exemplo bom, mas não deve ser utilizado apenas para armazenar todos os valores constantes para um aplicativo .

Se você tiver versões diferentes de um aplicativo (gratuito, premium, etc), que usa chaves de API diferentes, de construção de configuração é a melhor maneira de fazê-lo, como você pode ver no meu código acima, dependendo da variante de construção de lançar, a api chave irá mudar.

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=317629&siteId=1
Recomendado
Clasificación