Skip to content
winteru edited this page Oct 4, 2023 · 12 revisions

About Kotlin/Android

We're waiting for webview's Android support in webview#426 and webview#103. It not a good idea for a "binding" libary to support Android using Webview component in Android.

About webviewko and webviewjar

Initially I just want a webviewjar with a newer webview version. But eventually I rewrote the whole project in pure Kotlin with a different API. I think it should be an alternative to rather than a modified version of webviewjar. Then I change the name to "webviewko". Thanks to webviewjar's contributors, this project is inspired by and initially forked from your early works. You may see the contributors of webviewjar in the contributors of this project, that's because the reason mentioned above.

About webviewko and webview_java

webviewko starts earlier than webview_java, while webview_java is offically maintained. If you're using Java, you're recommended to use webview_java, if you're using Kotlin/JVM, both webviewko and webview_java are OK.

About JNA API

You can use JNA Layer API directly, see the jnaFull or jnaLayer in TestKt and TestJava for examples.

In some cases you do not need JNA layer API or you plan to add JNA independently, you may exclude jna inside webviewko:

// build.gradle.kts

implementation("com.github.Winterreisender:webviewko:v0.0.1-experimental.15") {
    exclude("net.java.dev.jna","jna")
}

// Then you can add JNA independently
implementation("net.java.dev.jna:jna:5.12.0")

(for version < v0.0.1-experimental.15)To use JNA Layer API, you must import JNA first.

About x86-32 and ARM Support

It's possible to support x86-32 and ARM and should be easy to do. What we need is just x86-32 and ARM native libaries and maybe a x86-32 and ARM Java environment. If you do have an use case, let us know and we'll start trying to do it. If you have these native libaries in x86-32 or ARM, make a pull request and we'll be appreciated.

About Binary Libs

We used to use x64 binary libs (dll, so, dylib) from webview_csharp f9e0550. Since v0.0.1-experimental.10, we use libs in webview-xmake

See the the changelog of releases for the version of x64 binary libs we used.

About Language

All languages, including English, 中文, are accepted.

About the Version Number

I always forget to change the version in build.gradle.kts, so you may see older version number that are not consistent with the release version, that's quite normal.

About EBWebView Folder

MS Webview2 will create an EBWebView for every application to save UserData like ~\AppData\Roaming\test.exe\EBWebView

See MicrosoftEdge/WebView2Feedback#2023 and https://docs.microsoft.com/en-us/microsoft-edge/webview2/concepts/user-data-folder?tabs=win32