我是React Native的新手。当推送到GitHub时,当前的任务是在AndroidManifest.xml中设置我的Google API密钥,而不会暴露它。 我设置了一个名为API_KEY的环境变量,但是我想在.xml中访问它,尝试启动开发服务器时遇到错误。>
到目前为止,我已经尝试过:
android:value=${env.API_KEY}
android:value="${env.API_KEY}"
android:value="${API_KEY}"
谢谢!
答案 0 :(得分:2)
=> permission
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
put in => \android\app\src\main\AndroidManifest inside / application
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="Your Google maps API Key Here"/>
https://medium.com/@samil.mehdiyev/integrating-google-maps-in-react-native-app-on-ios-656da9f1e40f
答案 1 :(得分:1)
假设您已在.env文件中定义了密钥,则可以在build.gradle
上将其设置为manifestPlaceholders
。
android {
defaultConfig {
manifestPlaceholders = [API_KEY: "$process.env.your_key"]
}
...
}
在您的AndroidManifest.xml
上,
android:value="${API_KEY}"
答案 2 :(得分:0)
基于第二个评论(来自kenmistry),对我有用的解决方案确实是在build.gradle中创建一个占位符,但是由于某种原因,配置和引用.env文件不起作用,我在build.gradle中像这样调用了我的环境变量:
manifestPlaceholders = [API_KEY: "$System.env.API_KEY"]
并按照kenmistry的建议在.xml中访问它:
android:value="${API_KEY}"