Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 레트로핏
- 유튜브
- 깃헙
- error
- 에러
- 스튜디오
- 코틀린
- 의존성주입
- Github
- MVVM
- 안드로이드 스튜디오
- 안스
- studio
- dart
- ADB
- viewpager
- build
- 안드로이드
- Android
- RecyclerView
- Kotlin
- GIT
- Gradle
- coroutine
- 안드로이드스튜디오
- WebView
- 코루틴
- Retrofit
- 웹뷰
- image
Archives
- Today
- Total
코딩하는 일용직 노동자
카카오링크 net::ERR_UNKNOWN_URL_SCHEME 처리하기. 본문
개발중인 하이브리드 앱의 웹뷰에 카카오톡으로 공유하기 기능이 있는데 카카오톡으로 이동도 하지 않고
net:ERR_UNKNOWN_URL_SCHEME 에러가 발생했습니다.
구글신에게 검색해보니 a href 에서 앞에 intent: 만 제거해서 붙이는 방법이 있었고
WebViewClient 의 shouldOverrideUrlLoading() 에서 처리해주는 방법이 있었습니다.
저는 shouldOverrideUrlLoading() 에서 아래의 소스를 추가해서 문제를 해결했습니다.
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
LogUtil.e("shouldOverrideUrlLoading :: " + url);
try {
/**
* 201229
* 카카오링크 오류 수정을 위해 아래 if문을 추가함.
*/
if (url != null && url.startsWith("intent:kakaolink:")) {
try {
Intent intent = Intent.parseUri(url, Intent.URI_INTENT_SCHEME);
Intent existPackage = getPackageManager().getLaunchIntentForPackage(intent.getPackage());
if (existPackage != null) {
startActivity(intent);
} else {
Intent marketIntent = new Intent(Intent.ACTION_VIEW);
marketIntent.setData(Uri.parse("market://details?id=" + intent.getPackage()));
startActivity(marketIntent);
}
return true;
} catch (Exception e) {
e.printStackTrace();
}
}
} catch (Exception e) {
e.printStackTrace();
return false;
}
return false;
}
'안드로이드' 카테고리의 다른 글
안드로이드 스튜디오 로그캣 색상 바꾸기 (0) | 2021.01.31 |
---|---|
빌드시 jni .so 파일을 제외시키는 방법 (0) | 2021.01.13 |
맥북에서 Android USB테더링 하기 (4) | 2020.12.15 |
PageIndicatorView - 뷰페이저 인디케이터 라이브러리 (0) | 2020.12.05 |
브레이크 포인트(breakpoint) 한꺼번에 제거하기 (0) | 2020.12.03 |