【问题标题】:How to access .env variables in AppDelegate.m from Flutter applications?如何从 Flutter 应用程序访问 AppDelegate.m 中的 .env 变量?
【发布时间】:2020-07-02 23:08:46
【问题描述】:

根据类似问题Hide Google Maps API key from source control in a Flutter app的指示

AppDelegate.m

#include "AppDelegate.h"
#include "GeneratedPluginRegistrant.h"
#import "GoogleMaps/GoogleMaps.h"

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
     NSString* mapsApiKey = [[NSProcessInfo processInfo] environment][@"FLUTTER_GMAPS_API_KEY"];
  [GMSServices provideAPIKey: mapsApiKey];
  [GeneratedPluginRegistrant registerWithRegistry:self];
  return [super application:application didFinishLaunchingWithOptions:launchOptions];
}

@end

如果我将 provideApiKey 更改为 @"theApiKeyImTryingToHide" 一切正常。

【问题讨论】:

  • 您找到解决方案了吗?
  • 不,我没有,抱歉
  • 我不知道这是否是您要找的东西,但我 posted an answer 回答了您提到的问题。希望有帮助)
  • @tatusDn 这正是我要找的,非常感谢!

标签: flutter dart


【解决方案1】:

我通过搜索 react-native lib 的答案找到了这个问题 也许对某人有用。

所以,要从 RN 中的 env 读取变量,您必须添加

NSString *mapsApiKey = [ReactNativeConfig envFor:@"GOOGLE_MAPS_API_KEY"];
[GMSServices provideAPIKey: mapsApiKey];

进入 AppDelegate.m 文件中 didFinishLaunchingWithOptions 方法的顶部 首先不要忘记导入

#import "ReactNativeConfig.h"

ReactNativeConfig提供GOOGLE_MAPS_API_KEY

【讨论】:

  • 这对我来说效果很好,是react-native-config的正确使用。请参阅Android equivalent,以便您可以在一个地方为两个平台定义您的 API_KEY。
【解决方案2】:

你能否从你的 shell 检查你的环境变量 FLUTTER_GMAPS_API_KEY 是否设置正确?

如果有帮助,还请检查官方地图存储库中的这个 AppDelegate.m 文件

https://github.com/flutter/plugins/blob/master/packages/google_maps_flutter/google_maps_flutter/example/ios/Runner/AppDelegate.m

【讨论】:

  • 是的,我已经正确设置了它,但是在较新的颤振版本中没有 AppDelegate.m 文件了,所以我担心这个问题并不相关。无论如何,谢谢!
【解决方案3】:

可以使用flutter_config 包在同一.env 文件中的AndroidManifest.xmlAppDelegate.swift 文件中使用您的地图API 密钥。有关详细信息,请参阅此 SO 答案https://stackoverflow.com/a/65448051/2532763

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-08
    • 2017-03-21
    • 1970-01-01
    • 1970-01-01
    • 2011-12-03
    • 1970-01-01
    • 1970-01-01
    • 2020-08-02
    相关资源
    最近更新 更多