fix webview lol srr
This commit is contained in:
parent
1101705b8d
commit
abae9e8b2a
3 changed files with 23 additions and 1 deletions
|
|
@ -158,7 +158,7 @@ class WebViewActivity : BaseActivity() {
|
|||
}
|
||||
|
||||
webViewCompose.apply {
|
||||
setContent { WebViewView(incognito, webViewClient) }
|
||||
setContent { WebViewView(incognito, webViewClient, url) }
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -184,6 +184,7 @@ class WebViewActivity : BaseActivity() {
|
|||
fun WebViewView(
|
||||
incognito: Boolean,
|
||||
webViewClient: WebViewClient,
|
||||
url: String
|
||||
) {
|
||||
val context = LocalContext.current
|
||||
val cookieManager = remember { CookieManager.getInstance() }
|
||||
|
|
@ -228,6 +229,11 @@ class WebViewActivity : BaseActivity() {
|
|||
.padding(padding)
|
||||
.fillMaxSize(),
|
||||
factory = { webView },
|
||||
update = {
|
||||
if (it.url != url) {
|
||||
it.loadUrl(url)
|
||||
}
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -225,6 +225,7 @@ class GenerateYoutubePoTokensFragment : Fragment() {
|
|||
val intent = Intent(requireContext(), PoTokenWebViewLoginActivity::class.java)
|
||||
intent.putExtra("url", "https://www.youtube.com")
|
||||
intent.putExtra("redirect_url", "https://www.youtube.com/embed/${editText.text.toString().getIDFromYoutubeURL()}")
|
||||
intent.putExtra("no_auth", true)
|
||||
webPoTokenResultLauncher.launch(intent)
|
||||
}
|
||||
|
||||
|
|
@ -246,6 +247,7 @@ class GenerateYoutubePoTokensFragment : Fragment() {
|
|||
dialog.setPositiveButton(getString(R.string.auth)) { dialogInterface: DialogInterface, _: Int ->
|
||||
val intent = Intent(requireContext(), PoTokenWebViewLoginActivity::class.java)
|
||||
intent.putExtra("url", "https://www.youtube.com/account")
|
||||
intent.putExtra("no_auth", false)
|
||||
webPoTokenResultLauncher.launch(intent)
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -66,6 +66,7 @@ class PoTokenWebViewLoginActivity : BaseActivity() {
|
|||
|
||||
val url = intent.getStringExtra("url")!!
|
||||
var redirectUrl = intent.getStringExtra("redirect_url")
|
||||
val noAuth = intent.getBooleanExtra("no_auth", false)
|
||||
|
||||
cookiesViewModel = ViewModelProvider(this)[CookieViewModel::class.java]
|
||||
lifecycleScope.launch {
|
||||
|
|
@ -187,6 +188,11 @@ class PoTokenWebViewLoginActivity : BaseActivity() {
|
|||
webView.loadUrl("https://www.youtube.com/robots.txt")
|
||||
}
|
||||
|
||||
if (savedInstanceState == null && noAuth) {
|
||||
cookieManager.removeAllCookies(null)
|
||||
cookieManager.flush()
|
||||
}
|
||||
|
||||
webViewCompose.apply {
|
||||
setContent { WebViewView(url, webViewClient) }
|
||||
}
|
||||
|
|
@ -233,6 +239,9 @@ class PoTokenWebViewLoginActivity : BaseActivity() {
|
|||
}
|
||||
}
|
||||
cookieManager.setAcceptThirdPartyCookies(this, true)
|
||||
|
||||
this.webViewClient = webViewClient
|
||||
this.webChromeClient = object : WebChromeClient() {}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -242,6 +251,11 @@ class PoTokenWebViewLoginActivity : BaseActivity() {
|
|||
.padding(padding)
|
||||
.fillMaxSize(),
|
||||
factory = { webView },
|
||||
update = {
|
||||
if (it.url != url) {
|
||||
it.loadUrl(url)
|
||||
}
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue