如何在我自己的android库模块中添加crosswalk webview? [英] How to add crosswalk webview in my own android library module?

查看:17
本文介绍了如何在我自己的android库模块中添加crosswalk webview?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在开发一个必须包含 Crosswalk Webview 的 Android 库模块.我使用 Github Sonatype (

第 2 步选择模块并根据需要重命名

第 3 步选择所有选项

这里android studio可能会要求你更新,更新一下

第四步处理模块依赖

此后,Gradle Build 自动运行到这里我们已经完成了人行横道入口.

步骤 5 使用 XWalkView

将此权限添加到 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>

将此添加到活动

XWalkView mXWalkView = (XWalkView) findViewById(R.id.xWalkView);mXWalkView.load("http://192.168.1.42/test", null);

到这里我们完成了这是我使用 webview 和 XWalkView 渲染三个.js STL 加载器的结果.

webview 不支持

XWalkView 支持良好

哈哈有效.

<小时>

Follow 是另一个旧的实现,你也可以参考这个好的 [post] 或 doc11.

这是源代码.

下载合适的 Crosswalk Android webview 包并从 https://crosswalk-project.org 解包/documentation/downloads.html

将xwalk_core_library_java.jar 从crosswalk libs 复制到android studio 项目中的app/libs/,点击文件,选择Adds As Library"

将crosswalk libs下的其他内容复制到app/src/main/jniLibs/

制作一个Android资源目录res2,将crosswalk res目录中的文件复制到该目录下.

将此添加到 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"/>并将 android:hardwareAccelerated="true" 添加到应用程序节点.以使用crosswalk webview 所需的硬件加速

将此添加到布局

将此添加到活动

XWalkView mXWalkView = (XWalkView) findViewById(R.id.webview);mXWalkView.load("http://xxxxxx.com", null);

如果你想调试远程,添加这个.

XWalkPreferences.setValue(XWalkPreferences.REMOTE_DEBUGGING, true);

I am in the development of an Android library module which has to include Crosswalk Webview. I create the library using Github Sonatype (https://github.com/sonatype/). It works fine without Crosswalk Webview. I tried the following 3 methods to include Crosswalk.

Method 1:

  • Add Crosswalk Webview library in my library project app gradle

  • Error : (Compile error)

  • Failed to resolve: org.xwalk:xwalk_core_library:18.48.477.13

Method 2:

Method 3:

Note: I tried both jar (ordinary, share mode) files

解决方案

I create a new app from the webview to XWalkView to render the three.js stl loader demo, which is not support by the webview no matter WebGlRenderer or CanvasRenderer. Here is the process how to use the crosswalk module:

Step 1:File->New->Import Module

step 2 select the module and rename if you need

step 3 choose all the option

here android studio may ask you to update, update it

step 4 process the module dependency

After this ,the Gradle Build Running automatically Here We have finished the crosswalk inport.

step 5 use the XWalkView

add this priviledges to 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" />

add hardware acceleration on to application node of AndroidManifest.xml

android:hardwareAccelerated="true"

add this to layout file

<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>

add this to activity

XWalkView mXWalkView = (XWalkView) findViewById(R.id.xWalkView);
mXWalkView.load("http://192.168.1.42/test", null);

Here we finished this is the result I use webview and XWalkView to render three.js STL loader.

webview not support

XWalkView supports well

Haha it works.


Follow is the another old implementation , and you can also refer to this good [post] or doc11.

here is the source code.

Download proper Crosswalk Android webview package and unpackage it from https://crosswalk-project.org/documentation/downloads.html

Copy xwalk_core_library_java.jar from crosswalk libs to app/libs/ in the android studio project, and write click on the file, select the "Adds As Library"

Copy other contents under crosswalk libs to app/src/main/jniLibs/

Make an Android Resource dir res2, and copy files in crosswalk res dir to this dir.

Add this to 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

add this to layout

<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>

add this to Activity

XWalkView mXWalkView = (XWalkView) findViewById(R.id.webview);
    mXWalkView.load("http://xxxxxx.com", null);

if you want to debug romote add this.

XWalkPreferences.setValue(XWalkPreferences.REMOTE_DEBUGGING, true);

这篇关于如何在我自己的android库模块中添加crosswalk webview?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆