본문 바로가기

Programming244

webview 네트워크 체크(TRANSPORT_WIFI & TRANSPORT_CELLULAR) // network check private fun isNetworkAvailable(context: Context): Boolean { val connectivityManager = context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager val network = connectivityManager.activeNetwork val capabilities = connectivityManager.getNetworkCapabilities(network) return capabilities != null && (capabilities.hasTransport(NetworkCapabilities.TRANSPORT_WIFI) || c.. 2024. 1. 5.
ViewBinding - kotlin app module 안에 build.gradle.kts 에 android { ... viewBinding { enable = true } ... } viewBinding 설정을 true 로 해주고 class MainActivity : AppCompatActivity() { private lateinit var binding: ActivityMainBinding // activitiy_main.xml private lateinit var progressBar: ProgressBar private lateinit var textView: TextView ... override fun onCreate(savedInstanceState: Bundle?) { .... binding = ActivityMainBin.. 2024. 1. 5.
android backstack - kotlin private fun setBackPressedCallback() { val dispatcher = onBackPressedDispatcher val onBackPressedCallback: OnBackPressedCallback = object : OnBackPressedCallback(true) { override fun handleOnBackPressed() { if (binding.바인딩된 웹뷰이름.canGoBack()) { binding.바인딩된 웹뷰이름.goBack() showToast("이전 페이지로 이동합니다.") } else { .. 2024. 1. 5.
Webview: 카카오톡 친구페이지로 이동하기 - kotlin // 카카오 모듈 implementation ("com.kakao.sdk:v2-all:2.18.0") // 전체 모듈 설치, 2.11.0 버전부터 지원 웹에서 구현한 카카오톡 친구페이지로 넘어가는 기능을 앱에서도 동일하게 구현하기 위해서 상단의 gradle 을 추가해주고 대부분의 웹처리를 override fun shouldOverrideUrlLoading(view: WebView, request: WebResourceRequest): Boolean { } 이곳에서 처리하게 되는데 override fun shouldOverrideUrlLoading(view: WebView, request: WebResourceRequest): Boolean { Log.d("CURRENT_LOCATION_URL", requ.. 2024. 1. 5.