我已使用以下代码在Kotlin WebView中成功呈现了我的Web应用程序。但是,我无法登录。我正在使用单独的身份服务器-它使用不同的URL(请参阅代码中的secondurl值)。
如何启用从Web视图中调用此URL进行登录身份验证?
package com.example.mywebview
import android.os.Bundle
import android.util.Log
import android.webkit.ConsoleMessage
import android.webkit.WebChromeClient
import android.webkit.WebSettings
import android.webkit.WebViewClient
import androidx.appcompat.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : AppCompatActivity() {
private val firsturl = "https://main.mysite.net/"
private val secondurl = "https://id.mysite.net/"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Get the web view settings instance
val setting = webview.settings
// Enable java script in web view
setting.javaScriptEnabled = true
// Maintain webview in app
webview.webViewClient = WebViewClient()
webview.loadUrl(firsturl)
}
}
如果要在webview中打开网页登录名,则可以使用网页上提供的按钮,并且应该启用javascript(因为它可能包含用于登录的功能)。
如果那不是您希望的另一种选择:
发送请求到服务器 从服务器端的php获取字符串或JSON 根据响应做你需要做的
val textView = findViewById<TextView>(R.id.text)
// ...
// Instantiate the RequestQueue.
val queue = Volley.newRequestQueue(this)
val url = "http://www.google.com"
// Request a string response from the provided URL.
val stringRequest = StringRequest(Request.Method.GET, url,
Response.Listener<String> { response ->
// Display the first 500 characters of the response string.
textView.text = "Response is: ${response.substring(0, 500)}"
},
Response.ErrorListener { textView.text = "That didn't work!" })
// Add the request to the RequestQueue.
queue.add(stringRequest)
来源:https : //developer.android.com/training/volley/simple#kotlin
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。