LoginSignup
0
0

More than 1 year has passed since last update.

Java with WebView

Posted at

JavaでWebViewを使ってみる。

簡単にやるには、JavaFXのWebViewを使えばできる。
しかし、cssの当たり方が微妙だったり、IndexedDBがなかったりとして、いまいち使い勝手が悪かった。

ということで、いろいろ検索をした結果Java Chromium Embedded Frameworkを使ってみた。

gradleあたりで引っ張ってきてってことはできないっぽいので、BranchesAndBuildingを参考に、ライブラリをビルドする。
わりかし簡単にビルドできたものの、なぜかPythonのバージョンが違っていたらしく、一部パッチを当ててビルドする必要があった。

以下を一括置換:

base64.encodestring -> base64.encodebytes
base64.encodestring -> base64.decodebytes

以下のバッチファイルでサンプルが実行できる。

binary_distrib/win64/run.bat

サンプルのソースは、以下のファイルとなっている。

./java/tests/detailed/MainFrame.java
./java/tests/simple/MainFrame.java

ちなみに、simpleは動かなかったので、以下のコードを入れてあげる必要があった。

CefMessageRouter msgRouter = CefMessageRouter.create();
client_.addMessageRouter(msgRouter);

組み込み方

冗長なのがあるかもしれないが、これくらい。

dependencies {
    api "binary_distrib/win64/bin/gluegen-rt.jar"
    api "binary_distrib/win64/bin/jogl-all.jar"
    api "binary_distrib/win64/bin/jcef.jar"
}

run {
    systemProperty "java.library.path", "binary_distrib/win64/bin/lib/win64"
}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0