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
- 의존성주입
- dart
- coroutine
- build
- Gradle
- studio
- 코루틴
- 웹뷰
- Kotlin
- GIT
- WebView
- 깃헙
- 안스
- 안드로이드
- Retrofit
- 레트로핏
- image
- 안드로이드스튜디오
- RecyclerView
- 에러
- viewpager
- 유튜브
- 스튜디오
- 안드로이드 스튜디오
- MVVM
- error
- Android
- Github
- 코틀린
- ADB
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 |