Sha1, Sha256 키를 Firebase console 에 넣기 위해 남들이 쓰는 명령어를 써보았다. 

cd android 

./ gradlew singleReport 

안된다.  안된다고 ! !! 내 노트북은 남들이랑 다르다고 !!

 Integrity check failed: java.security.NoSuchAlgorithmException: Algorithm HmacPBESHA256 not available

해결방법(Solution)

-storetype JKS옵션 사용하기

// 기존
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

// -storetype 옵션
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key -storetype JKS

java9 부터는 default storetype이 pkcs12라고 한다.
본인 pc에 java8이 깔렸는지 java9 이상이 깔려있는지 java9 이상이라면 확인을 하고 위의 해결볍을 사용하면 된다.

자 이렇게  진행하다보니?

구글링을 통한 초기화 비밀번호 android 입력후에 갑자기 키를 생성하라고 나온다. 

 

오 왠지 실마리가 보여서, 내 멋대로 이름도 설정하고, 마음대로 설정했더니 키가 생성이 된다.. ㅠㅠㅠㅠㅠ

2주 걸렸다.. 이것을 해결하다가 . 

* sign.jks 해당 부분에 내가 원하는 파일명을 넣어주면 된다 

예시(sign.jks,  secret.jsk 등등 ) 


keytool -genkey -v -keystore sign.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -keyalg RSA -keysize 2048 -validity 10000

keytool -genkey -v -keystore release.keystore -alias androidreleasekey -keyalg RSA -keysize 2048 -validity 10000

 

자 이제 cmd에서 명령어를 쳐보도록 하자. 

keytool -v -list -keystore [Keystore 파일]

생성 된다..   소리질르자 !!!!!! 

/* 인증서 파일 알고싶은경우 해당 명령어 치면 작동한다. */ 

DEBUG KEY 확인
keytool -list -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android

RELEASE KEY 확인
keytool -list -v -keystore release.keystore -alias androidreleasekey -storepass android -keypass android

앱 서명 KEY 확인
keytool -list -v -keystore key.jks

const 관련해서 밑줄이 에러는 아니지만.. 너무나도 거슬리는 상황이 있다.

"Prefer const with constant constructors."의 메시지가 계속 뜬다..

따라서 해당 문제를 해결하기 위해 구글링을 통해 정리해보았다. 

 

 

파일 상단에 주석을 추가해준다. (// ignore_for_file: prefer_const_constructors)

 

이렇게 작성해두면, 노란색 밑줄이 사라짐을 확인할 수 있습니다.

단, 원하는 파일마다 주석을 추가해야 하는 번거로움이 있을 수 있습니다.

 

 

진행하고 있는 플러터 프로젝트 구조를 보면 "analysis_options.yaml"파일을 확인할 수 있는데, 해당 파일을 열어줍니다.

 

해당 파일을 열어보면 rules라고 되어있는 부분에 해당 내용을 입력해준다.. 입력을 할 때는 꼭! 들여 쓰기를 맞춰준다.

(입력을 했음에도 밑줄이 계속 나온다면 들여 쓰기가 틀렸을 가능성이 매우 높다.)

Unable to Load Asset in Flutter

매우 열받는 상황이다.

이미지를 넣었는데 왜 호출을 못할까? 

 

"unable to load asset" 해결 방안

- 파일명에 특수문자가 들어 있으면 사진을 못읽습니다.

- pubspec.yaml 파일에 추가할때 들여쓰기 확인해야 합니다.

 

"이미지 추가" 방법

우선 이미지 파일을 프로젝트 폴더의 images 폴더에 넣습니다.

 

images 폴더가 없으면 새로 만들어 줍시다.

 

 

pubspec.yaml 파일을 수정해야 합니다..

 

 

위처럼 - images/ 경로를 assets 밑에 추가하면 됩니다.

 

flutter:

[2 띄어쓰기 or 1 탭]assets:
[4 띄어쓰기 or 2 탭]- images/

 

띄어쓰기 구분을 안 해주면 경로를 못 읽습니다.

 

pubspec.yaml 파일 수정 후에는 명령어를 실행해야 합니다.

(VScode에서는 자동적으로 해줍니다.)

flutter pub get

 

PowerShell이나 Terminal에서 실행을 해줍니다.

 

Column(
    mainAxisAlignment: MainAxisAlignment.center,
    crossAxisAlignment: CrossAxisAlignment.center,
    children: [
        Text('push-up page', style: TextStyle(fontSize: 30)),
        Image.asset('images/pushup.png', width: 100, height: 100),
    ],
),
BottomNavigationBarItem(
    icon: Image.asset('images/pushup.png', width: 40, height: 40),
    title: Text('Push-Up', style: TextStyle(fontSize: 15)),
),

 

이런 식으로 코드에 추가를 하면 됩니다.

------------------------------- ------------------------------- ------------------------------- ------------------------------- ------------------------------- --이렇게 했는데도 안되는 경우? 

마지막 2가지 최후의 방법이 있다. 

첫번째, 저장 잘하고 안드로이드 껐다가 다시키면 작동될때가 있다. 

두번쨰, 플로터 clean 

 

이렇게 수정이 될 것이다. 

 

+ Recent posts