光阴似箭催人老,日月如移越少年。
먼저 네트워크에 접근하기 위해 비동기식 요청을 사용하고 있기 때문에 호출 시 동기적으로 값을 얻는 것이 불가능합니다. OKHTTP의 네트워크 동기 액세스를 사용하고 네트워크 액세스가 완료된 후 값을 반환하여 올바른 값을 얻을 수 있거나, 네트워크 요청 후 값을 가져오는 등 비동기 값 획득을 직접 제어할 수 있습니다. 완료, 즉 입력 응답 후 작업을 수행합니다.
여기에서는 내부 클래스를 직접 작성하지 않고 현재 클래스가 인터페이스를 상속받도록 하고 재정의된 메서드에서 현재 클래스의 변수에 값을 할당합니다. 이것이 내 생각이다
getAsyn 메서드는 이름에서 알 수 있는 비동기 메서드입니다. getUrl은 응답을 받기 전에 반환되므로 응답의 값을 얻을 수 없습니다. 두 가지 솔루션이 있습니다:
getAsyn
getUrl
OkHttpClientManager동기화 방법이 있는지 확인
OkHttpClientManager
비동기 방식을 사용해야 하는 경우 getUrl에서 비동기 요청을 보내고 반환하기 전에 parseJson에 값이 있을 때까지 대기 또는 루프 상태에서 기다릴 수 있습니다. 이는 실제로 비동기식을 위장한 동기식으로 바꿉니다.
parseJson
개인적으로는 1층의 말이 맞는 것 같아요
먼저 네트워크에 접근하기 위해 비동기식 요청을 사용하고 있기 때문에 호출 시 동기적으로 값을 얻는 것이 불가능합니다. OKHTTP의 네트워크 동기 액세스를 사용하고 네트워크 액세스가 완료된 후 값을 반환하여 올바른 값을 얻을 수 있거나, 네트워크 요청 후 값을 가져오는 등 비동기 값 획득을 직접 제어할 수 있습니다. 완료, 즉 입력 응답 후 작업을 수행합니다.
여기에서는 내부 클래스를 직접 작성하지 않고 현재 클래스가 인터페이스를 상속받도록 하고 재정의된 메서드에서 현재 클래스의 변수에 값을 할당합니다. 이것이 내 생각이다
getAsyn
메서드는 이름에서 알 수 있는 비동기 메서드입니다.getUrl
은 응답을 받기 전에 반환되므로 응답의 값을 얻을 수 없습니다. 두 가지 솔루션이 있습니다:OkHttpClientManager
동기화 방법이 있는지 확인비동기 방식을 사용해야 하는 경우
getUrl
에서 비동기 요청을 보내고 반환하기 전에parseJson
에 값이 있을 때까지 대기 또는 루프 상태에서 기다릴 수 있습니다. 이는 실제로 비동기식을 위장한 동기식으로 바꿉니다.개인적으로는 1층의 말이 맞는 것 같아요