Androidライブラリモジュールを開発中です。これにはCrosswalkWebviewを含める必要があります。GithubSonatypeを使用してライブラリを作成します( https://github.com/sonatype/ =)。CrosswalkWebviewがなくても問題なく動作します。Crosswalkを含めるために次の3つの方法を試しました。
方法1:
ライブラリプロジェクトアプリのgradleにCrosswalkWebviewライブラリを追加します
エラー:(コンパイルエラー)
解決に失敗しました:org.xwalk:xwalk_core_library:18.48.477.13
方法2:
ライブラリプロジェクトに横断歩道aarファイルを追加します
Aarファイルを追加するための参照リンク 。aarファイルをAndroid Studio 1.1.0にインポートしてコードで使用する方法
Crosswalk Webviewを https://download.01.org/crosswalk/releases/crosswalk/Android/stable/18.48.477.13/ からダウンロードしました。
エラー:(コンパイルエラー)
解決に失敗しました:MyLIBApplication:xwalk_core_library_Java:unspecified
方法3:
ライブラリプロジェクトに横断歩道jarファイルを追加します
ダウンロードリンク https://download.01.org/crosswalk/releases/crosswalk/Android/stable/18.48.477.13/
エラー:このメソッドはコンパイルエラーはありませんが、Java.lang.NoClassDefFoundErrorであった実行時エラーが発生します:org.xwalk.core.R $ string
注:両方のjar(通常の共有モード)ファイルを試しました
WebビューからXWalkViewに新しいアプリを作成して、three.js stlローダーデモをレンダリングします。これは、WebGlRendererまたはCanvasRendererに関係なくWebビューでサポートされていません。横断歩道モジュールの使用方法は次のとおりです。
ステップ1:ファイル->新規->モジュールのインポート
ステップ2モジュールを選択し、必要に応じて名前を変更します
ステップ3すべてのオプションを選択します
ここAndroid studioは更新を要求する場合があります、更新してください
ステップ4モジュールの依存関係を処理する
この後、Gradleビルドが自動的に実行されますここで横断歩道のインポートが完了しました。
ステップ5XWalkViewを使用する
この特権をAndroidManifest.xmlに追加します
<uses-permission Android:name="Android.permission.ACCESS_FINE_LOCATION" />
<uses-permission Android:name="Android.permission.ACCESS_NETWORK_STATE" />
<uses-permission Android:name="Android.permission.ACCESS_WIFI_STATE" />
<uses-permission Android:name="Android.permission.CAMERA" />
<uses-permission Android:name="Android.permission.INTERNET" />
<uses-permission Android:name="Android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission Android:name="Android.permission.RECORD_AUDIO" />
<uses-permission Android:name="Android.permission.WAKE_LOCK" />
<uses-permission Android:name="Android.permission.WRITE_EXTERNAL_STORAGE" />
androidManifest.xmlのアプリケーションノードにハードウェアアクセラレーションを追加します
Android:hardwareAccelerated="true"
これをレイアウトファイルに追加します
<org.xwalk.core.XWalkView
Android:id="@+id/xWalkView"
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent">
</org.xwalk.core.XWalkView>
これをアクティビティに追加します
XWalkView mXWalkView = (XWalkView) findViewById(R.id.xWalkView);
mXWalkView.load("http://192.168.1.42/test", null);
これで、webviewとXWalkViewを使用してthree.jsSTLローダーをレンダリングした結果が完成しました。
webviewはサポートしていません
XWalkViewはよくサポートします
ハハそれは動作します。
フォローは別の古い実装であり、この良い[投稿]または doc11 を参照することもできます。
これが ソースコード です。
適切なCrosswalk Android webviewパッケージをダウンロードし、 https://crosswalk-project.org/documentation/downloads.html から解凍します。
Xwalk_core_library_Java.jarをcrosswalklibsからAndroid studioプロジェクトのapp/libs /にコピーし、ファイルをクリックして、[ライブラリとして追加]を選択します。
横断歩道ライブラリの下にある他のコンテンツをapp/src/main/jniLibs /にコピーします
Android Resource dir res2を作成し、crosswalk resdir内のファイルをこのdirにコピーします。
これをAndroidMenifest.xmlに追加します
<uses-permission Android:name="Android.permission.ACCESS_FINE_LOCATION" />
<uses-permission Android:name="Android.permission.ACCESS_NETWORK_STATE" />
<uses-permission Android:name="Android.permission.ACCESS_WIFI_STATE" />
<uses-permission Android:name="Android.permission.CAMERA" />
<uses-permission Android:name="Android.permission.INTERNET" />
<uses-permission Android:name="Android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission Android:name="Android.permission.RECORD_AUDIO" />
<uses-permission Android:name="Android.permission.WAKE_LOCK" />
<uses-permission Android:name="Android.permission.WRITE_EXTERNAL_STORAGE" />
and add Android:hardwareAccelerated="true" to application node.to use hardware acceleration which is needed by crosswalk webview
これをレイアウトに追加します
<org.xwalk.core.XWalkView Android:id="@+id/webview"
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
>
</org.xwalk.core.XWalkView>
これをアクティビティに追加します
XWalkView mXWalkView = (XWalkView) findViewById(R.id.webview);
mXWalkView.load("http://xxxxxx.com", null);
romoteをデバッグする場合は、これを追加します。
XWalkPreferences.setValue(XWalkPreferences.REMOTE_DEBUGGING, true);