【发布时间】:2018-11-09 18:21:57
【问题描述】:
React Native 在内部使用__DEV__ to check whether an app is a dev or release build。
我们使用它来确定我们是否应该指向我们的暂存环境或生产环境。
_host = (__DEV__) ? 'https://staging-api.foo-app.com' : 'https://api.foo-app.com';
if (Platform.OS === 'ios') {
deploymentKey = (__DEV__) // iOS
? '5eCkg3JX3aip-D_a77eea5c3-0MXihVlUTZ4yy45a-432a-b73e-0a844d8b8310' // Staging
: 'zGxOja-Yhchs87eea5c3-0d5a-432aQriLlV17gI-sdj55-b73e-0a844d8b8310'; // Production
} else {
deploymentKey = (__DEV__) // Android
? 'vrrKTaq08Hid77eea5c3-0d5a-432aDhXbdI8-G9CnWmqc-b73e-0a844d8b8310' // Staging
: '8DclNAKdcQkKlQDL77eea5c3-0d5a-432aslW1SeS6sDMo-b73e-0a844d8b8310'; // Production
}
问题在于,对于从 XCode 和 Android Studio 侧加载到设备的任何构建,__DEV__ 的计算结果为 false。 因此,为了在设备上进行测试,我们在几个地方执行此操作:
// _host = (__DEV__) ? 'https://staging-api.foo-app.com' : 'https://api.foo-app.com';
_host = 'https://staging-api.foo-app.com';
我们如何确定应用程序是侧载的还是从 App Store 或 Play Store 下载的?
【问题讨论】:
标签: react-native production-environment sideloading test-environments