0

私は 3D グラフィックスを含むソフトウェアに取り組んでいます。これらは十分に大きいので、OpenGL を使用して非常に滑らかなアニメーションを維持することにしました。THREE.js グラフィック ライブラリ (WebGL) を選択しました。

Web ブラウザーを介して html を読み取ることは非常にうまく機能します。WebGL 関数は認識されます。デスクトップ(Win32 / Firefox17、私の設定で私を判断しないでください!)とNexus 10(Android 4.3、FF24、およびFF25Beta、Chrome30Betaで試しましたが、喜びはありません...)でそれを行いました。しかし、プログラムの情報を取得するには、ファイル システムなどのネイティブ データにアクセスする必要があります。そこで、コードを WL でラップし、Nexus 10 にアプリとしてデプロイしました...そして、WebGL 機能が消えました... :(

そこで私はその理由を探しました: IBM のサイトで 2 つの異なるアイデアを見つけました: ある意味では、JS エンジンが組み込まれていることを理解しています。別の方法では、WL はタブレットのデフォルト Web ブラウザーのエンジンを使用しています (初めて理解した)...

さまざまなエンジンについて正確に説明しましょう。Nexus では、FF には明らかに Gecko エンジンがあり、Chrome30 は Blink (webkit のような、バージョン 537.36) です。これらは、ブラウザで直接読んだときに window.navigator.useragent によって検出されたものです。当然のことです。Eclipse/WL プレビューでは、選択したブラウザー、FF または IE (Safari ではなく、インストールしていません) に応じて、さまざまなインタープリターを取得しましたが、デスクトップからのものではありません (使用されているものは、私が使用したものよりも古いものです)。自分のFF...)。しかし、アプリで使用されているものを検出すると (apk にラップした後)、AppleWebkit 534.30/Worklight/6.0... が返されます。

多分私が間違っているかもしれませんが(教えてください)、「Worklight」がエンジンのバージョンにあり、タブレットからChromeを抑制してもWebkitが使用されている場合(バージョンは異なりますが、誰が知っている..)、私はこのアプリの構成では、エンジンが Cordova または WL によって組み込まれているのが不思議です。そうであれば、ハードウェアにインストールされているブラウザに関係なく、完全に互換性のあるインタープリターでコードを読み取ることができることに同意します。しかし、Webkit エンジンがサポートする機能 (WebGL のように、非常に部分的にしかサポートされていない) に満足できない場合、私には問題のように見えます。

誰かがそれがどのように機能するかを確認していますか? エンジンがアプリにラップされている場合、含めるエンジンを選択できるかどうか、または構成できるかどうか (WebGL を有効にするなど) を知っていますか ;) ? 別のアイデア?

ありがとう、

ヴィンセント。

4

1 に答える 1

0

Worklight アプリケーションには、インタープリターはバンドルされていません。アプリケーションは、OS にバンドルされているものを使用します。

つまり、Worklight のデフォルトの WebView は OS が提供するものであり、Android の場合はバンドルされた WebKit を使用します。

これは、Worklight が制御するものではありません。

おそらく、どうにかして Firefox エンジン ライブラリーをアプリにバンドルし、すべてを接続することもできますが、そのタスクは非常に大規模で複雑であり、IBM Worklight ではサポートされていません。また、Cordova がこれをサポートしているかどうかもわかりません (ネイティブ機能とのインターフェースとして Worklight で使用されます)。

useragent に関しては、IBM WebSphere Portal のサポートの一環として、ストリング「Worklight」が付加されています。

于 2013-10-22T08:39:53.157 に答える