Я не эксперт и не очень разбираюсь в командах ОС и оболочки. Я успешно сохранял свои API-ключи для своего проекта Flutter как переменные среды, пока у меня не возникли проблемы (не связанные с env), и мне не пришлось переустанавливать Flutter SDK. Flutter SDK теперь находится в другой папке, и я изменил свой PATH, чтобы включить его, чтобы не было проблем при создании и запуске проекта.
Если я вызываю printenv в любом терминальном сеансе или даже через простое выполнение файла дротика В рамках моего проекта Flutter, он печатает это как следует (исключая некоторые пары, но все значения по умолчанию есть):
BEAR_TOKEN=********* SDKMAN_CURRENT_API=https://api.sdkman.io/2 USER= SDKMAN_LEGACY_API=https://api.sdkman.io/1 PATH=/Users//.sdkman/candidates/kotlin/current/bin:/Users//Dev/Flutter/flutter/bin:/Users//.pub-cache/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users//Desktop/android: PWD=/Users/ LANG=en_US.UTF-8 SDKMAN_VERSION=5.6.1+290 XPC_FLAGS=0x0 HOME=/Users/ SDKMAN_DIR=/Users//.sdkman SDKMAN_CANDIDATES_DIR=/Users//.sdkman/candidates RAPID_API_KEY=***************
Однако теперь, когда я печатаю моя среда с помощью любой флаттерной программы:
PATH:/sbin:/system/sbin:/product/bin:/apex/com.android.runtime/bin:/system/bin:/system/xbin:/odm/bin:/vendor/bin:/vendor/xbin, ANDROID_BOOTLOGO: 1, ANDROID_ROOT: /system, ANDROID_ASSETS: /system/app, ANDROID_DATA: /data, ANDROID_STORAGE: /storage, ANDROID_RUNTIME_ROOT: /apex/com.android.runtime, ANDROID_TZDATA_ROOT: /apex/com.android.tzdata, EXTERNAL_STORAGE: /sdcard, ASEC_MOUNTPOINT: /mnt/asec, BOOTCLASSPATH: /apex/com.android.runtime/javalib/core-oj.jar:/apex/com.android.runtime/javalib/core-libart.jar:/apex/com.android.runtime/javalib/okhttp.jar:/apex/com.android.runtime/javalib/bouncycastle.jar:/apex/com.android.runtime/javalib/apache-xml.jar:/system/framework/framework.jar:/system/framework/ext.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/android.test.base.jar:/apex/com.android.conscrypt/javalib/conscrypt.jar:/apex/com.android.media/javalib/updatable-media.jar, DEX2OATBOOTCLASSPATH: /apex/com.android.runtime/javalib/cor
Так что это, очевидно, очень разные среды, поэтому я даже не могу получить доступ к своим API-ключам в моем приложении Flutter. Похоже, это влияет только на проекты Flutter. Может ли кто-нибудь помочь мне вроде «перенаправить» или исправить мою среду? Я понятия не имею, как это произошло, но я исчерпал все варианты, насколько мне известно. Я использую MacOS High Sierra 10.13.6.
Спасибо!