# 개발 MATCH_ENV_PREFIX_DEVELOPMENT="sigh_io.project.dev_development" MATCH_ENV_PREFIX_DEVELOPMENT_EXT="sigh_io.project.dev.OneSignalNotificationServiceExtension-Dev_development"
APPCENTER_API_TOKEN=앱센터 토큰 APPCENTER_OWNER_NAME="앱센터 사용자 이름" APPCENTER_APP_NAME="앱센터 앱 이름" APPCENTER_DISTRIBUTE_IPA="./projectDev.ipa"
# 상용 MATCH_ENV_PREFIX_APPSTORE="sigh_io..project.app_appstore" MATCH_ENV_PREFIX_APPSTORE_EXT="sigh_io.project.app.OneSignalNotificationServiceExtension-Prod_appstore"
STORE_DISTRIBUTE_IPA="./project.ipa"
#4. env 로드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
platform :android do before_all do Dotenv.overload '../.env.FLAndroid' ... end ... en
----------------------------------------------
platform :ios do before_all do Dotenv.overload '../.env.FLIos' ... end ... en
#5. Appfile 셋팅 (환경변수 파일)
필요에 따라 작성하면 된다.
1 2 3 4 5
# app_identifier('io.project') # The bundle identifier of your app apple_id('[email protected]') # Your Apple email address
# itc_team_id('####') # App Store Connect Team ID # team_id("ABCDE") # Developer Portal Team ID
03. How to Run Fastlane
local에 설치 된 ruby 버전이 아닌 프로젝트에서 지정한 ruby버전을 사용하기 위해 bundle exec 명령어를 이용
for (const key in obj) { console.log(key); // prop1, prop2, prop3, prop4 console.log(obj[key]); // value1, value2, value3, value4 }
체인닝 방지를 위해
블록 스코프 내에 변수가 없으면 그 위로 찾아 간다…
1 2 3 4 5 6
for (const key in obj) { if (obj.hasOwnProperty(key)) { console.log(obj[key]); // value1, value2, value3, value4 } } // 상속되거나 확장되어 사용 된 객체의 상위에서 꺼내오지 않도록 하는 방어문
프로퍼티 조작
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
const person = { firstName: "Chaehyeon", location: "Korea", }
// 추가 person.lastName: "Lee" // 수정 person.lastName: "lee" // 삭제 delet person.location;