깃 에러 해결 (git) could not read Username for 'https://github.com': No such file or directory

IT 관련 지식|2022. 5. 19. 14:56
반응형
728x170

새로운 git 프로젝트를 만들고 push를 하려고 하는데

 

갑자기 "could not read Username for 'https://github.com': No such file or directory" 같은 에러가 발생한다...

 

원인을 보아하니 업데이트를 하면서 기존의 설정이 변경되어 이러한 에러가 발생하는거 같다

 


1. 해결 방법(Window)

 

AndroidStudio(안드로이드뿐 아니라 jetbrain의 IDE를 쓰는거면 다 똑같음)에 들어간다

 

상단의 File -> Settings -> Version Control -> Git -> (밑에 있는) "Use credential helper"에 체크를 한다

 

 


2. 해결방법 (Mac)

 

Android Studio Preferences -> Version Control -> Git -> "Use credential helper"에 체크를 한다

 

 

300x250

이렇게 하고 다시 push를 하면

 

token을 입력해라는 창이 뜨게된다

 

거기에 자신이 갖고 있는 git의 token을 넣으면된다

 

반응형

댓글()

안드로이드 에뮬레이서 밖에서 or 안에서 실행하기

반응형
728x170

안드로이드 스튜디오 4.1부터 

 

앱 내부에서 에뮬레이터를 실행하는 기능이 생겼습니다.

 

(전 좋은 점을 모르겠는데 일단 만들어 줬네요;;)

 

 

 


1. 에뮬레이터를 밖 or 안에서 실행하기

 

1. Window의 경우

 

File -> Setting

300x250

2. Mac의 경우

 

androidStudio -> Preferences

 

를 들어가면 아래와 같은 창을 볼 수 있습니다.

 

여기서 "Launch in a tool window"를 

 

체크하면 -> 안드로이드 스튜디오 안에서 에뮬레이터가 실행됨

 

체크해제 -> 안드로이드 스튜디오 밖에서 에뮬레이터가 실행됨

 

 

 

반응형

댓글()

[100% 해결]Git Private repository 클론(clone)시 not found 문제

IT 관련 지식|2022. 5. 14. 08:30
반응형
728x170

처음으로 다른 사람의 private repository를 Clone 해봤는데

 

"remote: Repository not found" 에러를 맞이했다...

 

이 에러는 아래와 같은 방법으로 간단하게 해결할 수 있다

 

 

해당 Repository에 소속되어있는 유저의 이름(아이디 아님)을 적고 + @ + Repository주소

 

즉, 이런식으로 적으면 된다!

 

git clone https://[USER_NAME]@github.com/~~~.git

여기서 이름을 넣으면 이런식으로 된다

git clone https://abc123@github.com/~~~.git

 

혹시 여기까지 했는데 비밀번호를 입력해라고 할 경우

 

개인 액세스 토큰을 입력하면됩니다

 

300x250

 

반응형

댓글()

WorkManager에서 suspend 함수 사용 시 두 번 호출 문제

반응형
728x170

1. 문제 현상

 

CoroutineWorker를 사용하는데

 

이 클래스 내부에서 suspend 함수를 호출하면

 

해당 suspend 함수를 완료하고 나서 다시 돌아오는 현상이 발생했다....

 

예를 들어 아래의 사진을 보면

 

 

doWork 함수 내에서 tartgetAlarmData를 collect하는데

 

이때 비동기 작업을 한다(suspend funtion)

 

그리고 해당 collect 내부에선 Activity를 띄우는데 

 

문제는 Activity를 닫고나서 다시 targetAlarmData를 collect한다

 

(ReceiverAlarmWork 클래스나 doWork 함수부터 시작하는게 아님, targetAlarmData를 collect하는 부분부터 시작함...)

300x250

2. 해결 방법

 

원하는 타이밍에 해당 workManager를 stop 시켜주면된다

 

하지만 특정 workManager를 지정하기 위해선 해당 workManager에 이름을 붙여줘야한다

 

enqueueUniqueWork("uniqueWorkName", ExistingWorkPolicy, OneTimeWorkRequest)

enqueueUniqueWork 함수를 사용해서 시작하려는 workManager에 이름을 붙일 수 있다

 

여기선 uniqueWorkName을 "onAlarmActivity"로 하였다

 

그리고 workManager는 onAlarmActivity를 열기 때문에 거기서 이 work를 cancel해주면 된다

 

아래의 함수를 onAlarmActivity의 onCreate()에서 호출하면 더 이상 ReceiverAlarmWorker가 동작하지 않는다

 

반응형

댓글()