hive로 어떻게든 해보려다가 조건을 붙여서 하는게 영 너무 힘들어서 결국 sqlite로 넘어가려고 flutter용 sqlite인 sqflite를 설치해서 사용하려고 하던중 

안드로이드는 잘 돌아가나 ios에서 제목과같은 오류가 나면서 안된다.

In Podfile:
        sqflite (from `.symlinks/plugins/sqflite/darwin`)

    Specs satisfying the `sqflite (from `.symlinks/plugins/sqflite/darwin`)` dependency were found, but they required a higher minimum deployment target.

평소처럼 구글님의 은혜를 받아 우선 번역기를 돌려보면 

`sqflite(`.symlinks/plugins/sqflite/darwin`에서)` 종속성을 충족하는 사양이 발견되었지만 더 높은 최소 배포 대상이 필요했습니다.

라고하니 단순히 최소 배포값이 더 높은건가 싶어 sqflite 페이지를 살펴봐도 최소 버전에대한 안내가없다.

결국 그냥 평소에 많이 잡는 12로 하자싶어 12로 변경하고 pods폴더 날리고 podfile.lock파일도 날리고 거기에 굳이 필요하나 싶지만 flutter clean도 요청해주고 다시 설치하니 돌아간다.

 

참고로 cocoapod이 설치되는 지원 버전은 podfile에 정의되어있다.

버전별로 다를수있으나 내가 쓰는 flutter에서의 자동으로 만들어진 Podfile에서는

# Uncomment this line to define a global platform for your project
# platform :ios, '11.0'

이렇게 시작한다.

이 문서의 두번째 주석을 풀어주고 값을 12로 변경해줬다.

# Uncomment this line to define a global platform for your project
platform :ios, '12.0'

 

내가 상속을 배웠던 언어는 get과 set을 분리해서 정의하는게 없었던 언어라 ( 내가 배우지 않은것일수도 있다 ) set만 오버라이드 할 경우 super를 호출되도 잘되는가에 대한 테스트가 필요했다.

테스트용이라 짧디 짧은 코드지만 그냥 날려버리기 뭔가 아깝다 생각이 들어 글을 남기기로 결정.

class A {
  A() {
    print('A가 생성이 시작되는 시점 - aValue: ${aValue}');
  }
  String aValue = 'default value';
}

class B extends A {
  B() {
    print('B가 생성이 시작되는 시점 - aValue: ${aValue}');
    super.aValue = 'initValue';
  }

  @override
  set aValue(String value) {
    print('set:$value B에서의 오버라이드한 함수가 불려졌다.');
    super.aValue = value;
  }
}

void main() {
  final b = B(); // 출력:A가 생성이 시작되는 시점 - aValue: default value,  B가 생성이 시작되는 시점 - aValue: default value
  print('시점 0 ~ b의 값 : ${b.aValue}'); // 출력: 시점 0 ~ b의 값 : initValue

  b.aValue = 'main - value'; // 출력: set:main - value B에서의 오버라이드한 함수가 불려졌다.

  print('시점 1 ~ b의 값 : ${b.aValue}'); // 출력: 시점 1 ~ b의 값 : main - value
}

set에서만 override를 해서 aValue를 설정할때 따로 print가 되도록 설정이 잘됐다.

super 지정이 잘 동작 한다.

뭐라 쓸 내용이 없네

플러터앱 외주 작업중 국가 코드로 이름을 가져와야되는 귀찮은 상황이 생겨서 위키에서 긁은걸 gpt로 넘겨서 작성해봄.

맵쪽은 나중에 다른 언어에서도 사용할수있을듯하다.

chat gpt가 신생언어에서 이상한 소리를 많이 하는데 이런 텍스트 포맷 변경은 참 잘한다.

class CountryISOAlpha2 {
  String? getCode(String name) {
    for (var key in _countrys.keys) {
      if (_countrys[key] == name) {
        return key;
      }
    }

    return null;
  }

  String? getName(String code) {
    return _countrys[code];
  }

  final Map<String, String> _countrys = {
    'AD': '안도라',
    'AE': '아랍에미리트',
    'AF': '아프가니스탄',
    'AG': '앤티가 바부다',
    'AI': '앵귈라',
    'AL': '알바니아',
    'AM': '아르메니아',
    'AO': '앙골라',
    'AQ': '남극',
    'AR': '아르헨티나',
    'AS': '아메리칸사모아',
    'AT': '오스트리아',
    'AU': '오스트레일리아',
    'AW': '아루바',
    'AX': '올란드 제도',
    'AZ': '아제르바이잔',
    'BA': '보스니아 헤르체고비나',
    'BB': '바베이도스',
    'BD': '방글라데시',
    'BE': '벨기에',
    'BF': '부르키나파소',
    'BG': '불가리아',
    'BH': '바레인',
    'BI': '부룬디',
    'BJ': '베냉',
    'BL': '생바르텔레미',
    'BM': '버뮤다',
    'BN': '브루나이',
    'BO': '볼리비아',
    'BQ': '보네르섬',
    'BR': '브라질',
    'BS': '바하마',
    'BT': '부탄',
    'BV': '부베섬',
    'BW': '보츠와나',
    'BY': '벨라루스',
    'BZ': '벨리즈',
    'CA': '캐나다',
    'CC': '코코스 제도',
    'CD': '콩고 민주 공화국',
    'CF': '중앙아프리카 공화국',
    'CG': '콩고 공화국',
    'CH': '스위스',
    'CI': '코트디부아르',
    'CK': '쿡 제도',
    'CL': '칠레',
    'CM': '카메룬',
    'CN': '중국',
    'CO': '콜롬비아',
    'CR': '코스타리카',
    'CU': '쿠바',
    'CV': '카보베르데',
    'CW': '퀴라소',
    'CX': '크리스마스섬',
    'CY': '키프로스',
    'CZ': '체코',
    'DE': '독일',
    'DJ': '지부티',
    'DK': '덴마크',
    'DM': '도미니카 연방',
    'DO': '도미니카 공화국',
    'DZ': '알제리',
    'EC': '에콰도르',
    'EE': '에스토니아',
    'EG': '이집트',
    'EH': '서사하라',
    'ER': '에리트레아',
    'ES': '스페인',
    'ET': '에티오피아',
    'FI': '핀란드',
    'FJ': '피지',
    'FK': '포클랜드 제도',
    'FM': '미크로네시아 연방',
    'FO': '페로 제도',
    'FR': '프랑스',
    'GA': '가봉',
    'GB': '영국',
    'GD': '그레나다',
    'GE': '조지아',
    'GF': '프랑스령 기아나',
    'GG': '건지섬',
    'GH': '가나',
    'GI': '지브롤터',
    'GL': '그린란드',
    'GM': '감비아',
    'GN': '기니',
    'GP': '과들루프',
    'GQ': '적도 기니',
    'GR': '그리스',
    'GS': '사우스조지아 사우스샌드위치 제도',
    'GT': '과테말라',
    'GU': '괌',
    'GW': '기니비사우',
    'GY': '가이아나',
    'HK': '홍콩',
    'HM': '허드 맥도널드 제도',
    'HN': '온두라스',
    'HR': '크로아티아',
    'HT': '아이티',
    'HU': '헝가리',
    'ID': '인도네시아',
    'IE': '아일랜드',
    'IL': '이스라엘',
    'IM': '맨섬',
    'IN': '인도',
    'IO': '영국령 인도양 지역',
    'IQ': '이라크',
    'IR': '이란',
    'IS': '아이슬란드',
    'IT': '이탈리아',
    'JE': '저지섬',
    'JM': '자메이카',
    'JO': '요르단',
    'JP': '일본',
    'KE': '케냐',
    'KG': '키르기스스탄',
    'KH': '캄보디아',
    'KI': '키리바시',
    'KM': '코모로',
    'KN': '세인트키츠 네비스',
    'KP': '조선민주주의인민공화국',
    'KR': '대한민국',
    'KW': '쿠웨이트',
    'KY': '케이맨 제도',
    'KZ': '카자흐스탄',
    'LA': '라오스',
    'LB': '레바논',
    'LC': '세인트루시아',
    'LI': '리히텐슈타인',
    'LK': '스리랑카',
    'LR': '라이베리아',
    'LS': '레소토',
    'LT': '리투아니아',
    'LU': '룩셈부르크',
    'LV': '라트비아',
    'LY': '리비아',
    'MA': '모로코',
    'MC': '모나코',
    'MD': '몰도바',
    'ME': '몬테네그로',
    'MF': '생마르탱',
    'MG': '마다가스카르',
    'MH': '마셜 제도',
    'MK': '북마케도니아',
    'ML': '말리',
    'MM': '미얀마',
    'MN': '몽골',
    'MO': '마카오',
    'MP': '북마리아나 제도',
    'MQ': '마르티니크',
    'MR': '모리타니',
    'MS': '몬트세랫',
    'MT': '몰타',
    'MU': '모리셔스',
    'MV': '몰디브',
    'MW': '말라위',
    'MX': '멕시코',
    'MY': '말레이시아',
    'MZ': '모잠비크',
    'NA': '나미비아',
    'NC': '누벨칼레도니',
    'NE': '니제르',
    'NF': '노퍽섬',
    'NG': '나이지리아',
    'NI': '니카라과',
    'NL': '네덜란드',
    'NO': '노르웨이',
    'NP': '네팔',
    'NR': '나우루',
    'NU': '니우에',
    'NZ': '뉴질랜드',
    'OM': '오만',
    'PA': '파나마',
    'PE': '페루',
    'PF': '프랑스령 폴리네시아',
    'PG': '파푸아뉴기니',
    'PH': '필리핀',
    'PK': '파키스탄',
    'PL': '폴란드',
    'PM': '생피에르 미클롱',
    'PN': '핏케언 제도',
    'PR': '푸에르토리코',
    'PS': '팔레스타인',
    'PT': '포르투갈',
    'PW': '팔라우',
    'PY': '파라과이',
    'QA': '카타르',
    'RE': '레위니옹',
    'RO': '루마니아',
    'RS': '세르비아',
    'RU': '러시아',
    'RW': '르완다',
    'SA': '사우디아라비아',
    'SB': '솔로몬 제도',
    'SC': '세이셸',
    'SD': '수단',
    'SE': '스웨덴',
    'SG': '싱가포르',
    'SH': '세인트헬레나',
    'SI': '슬로베니아',
    'SJ': '스발바르 얀마옌 제도',
    'SK': '슬로바키아',
    'SL': '시에라리온',
    'SM': '산마리노',
    'SN': '세네갈',
    'SO': '소말리아',
    'SR': '수리남',
    'SS': '남수단',
    'ST': '상투메 프린시페',
    'SV': '엘살바도르',
    'SX': '신트마르턴',
    'SY': '시리아',
    'SZ': '에스와티니',
    'TC': '터크스 케이커스 제도',
    'TD': '차드',
    'TF': '프랑스령 남방 및 남극 지역',
    'TG': '토고',
    'TH': '태국',
    'TJ': '타지키스탄',
    'TK': '토켈라우',
    'TL': '동티모르',
    'TM': '투르크메니스탄',
    'TN': '튀니지',
    'TO': '통가',
    'TR': '튀르키예',
    'TT': '트리니다드 토바고',
    'TV': '투발루',
    'TW': '중화민국',
    'TZ': '탄자니아',
    'UA': '우크라이나',
    'UG': '우간다',
    'UM': '미국령 군소 제도',
    'US': '미국',
    'UY': '우루과이',
    'UZ': '우즈베키스탄',
    'VA': '바티칸 시국',
    'VC': '세인트빈센트 그레나딘',
    'VE': '베네수엘라',
    'VG': '영국령 버진아일랜드',
    'VI': '미국령 버진아일랜드',
    'VN': '베트남',
    'VU': '바누아투',
    'WF': '왈리스 푸투나',
    'WS': '사모아',
    'YE': '예멘',
    'YT': '마요트',
    'ZA': '남아프리카 공화국',
    'ZM': '잠비아',
    'ZW': '짐바브웨',
  };
}

+ Recent posts