crosswalk代替webview

article/2025/9/16 5:43:35

五步整合crosswalk内核浏览h5变高性能APP.

crosswalk介绍就不提了。我这里提供5个步骤整合到android项目中去。

开发环境: Android Studio

1.build.gradle Module配制

repositories {maven {url 'https://download.01.org/crosswalk/releases/crosswalk/android/maven2'}
}dependencies {compile fileTree(dir: 'libs', include: ['*.jar'])compile 'org.xwalk:xwalk_core_library:23.53.589.4'
}

2.manifest.xml文件

需要注意:android:hardwareAccelerated="true" 为硬件加速

<!--需要权限-->
<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.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><applicationandroid:hardwareAccelerated="true"android:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:roundIcon="@mipmap/ic_launcher_round"android:supportsRtl="true"android:theme="@style/AppTheme" ><activity android:name=".MainActivity" ><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity>
</application>

3.布局文件

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"xmlns:app="http://schemas.android.com/apk/res-auto"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="com.example.dowell.myapplication.MainActivity"><org.xwalk.core.XWalkViewandroid:id="@+id/xwalkWebView"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent"android:background="#000000"app:layout_constraintLeft_toLeftOf="parent"/></android.support.constraint.ConstraintLayout>

4.java代码

setContentView(R.layout.activity_main);xwalkWebView=(XWalkView)findViewById(R.id.xwalkWebView);
xwalkWebView.load("http://www.baidu.com",null);XWalkSettings settings = xwalkWebView.getSettings();
settings.setDomStorageEnabled(true);
settings.setCacheMode(WebSettings.LOAD_DEFAULT);
settings.setAllowFileAccess(true);
settings.setDatabaseEnabled(true);
settings.setJavaScriptEnabled(true);//资源加载动作的事件 参考webview的setWebViewClient
//xwalkWebView.setResourceClient(new XWalkResourceClient());
//界面相关的client 参照WebView setWebChromeClient
//xwalkWebView.setUIClient(new MyXWalkUIClient(mXwalkView));
//js 交互相关,参照webview的addJavascriptInterface代码
//xwalkWebView.addJavascriptInterface(new UMengInterface(), "UMeng");
5.屏蔽crosswalk自动响应android返回键的事件。内置带回退效果
@Override
public boolean dispatchKeyEvent(KeyEvent event) {if(event.getKeyCode()==KeyEvent.KEYCODE_BACK){return true;}return super.dispatchKeyEvent(event);
}
参考:https://github.com/crosswalk-project/crosswalk-test-suite/blob/7b8527f7551548e7225700e78a11b82c371ae137/usecase/usecase-embedding-android-tests/embeddingapi/src/org/xwalk/embedded/api/sample/XWalkViewWithDispatchKeyEvent.java

http://chatgpt.dhexx.cn/article/2bYsF5XD.shtml

相关文章

Building a Crosswalk application

原文访问实在太慢&#xff0c;转载到这里方便访问。 Building a Crosswalk application Crosswalk is a runtime for HTML5 applications. This means that any existing HTML5 applications should run on Crosswalk, providing they already run in a modern browser (Chro…

android crosswalk闪退,Crosswalk 首次启动闪烁一下的处理办法(Xamarin.Android)

Crosswalk继承好了Webview之后&#xff0c;出现了一个奇怪现象。首次启动会短暂的黑屏闪烁。 进过查阅发现Xwalk控件Webview内部使用的是surfaceview。 而安卓surfaceview是特殊的控件&#xff0c;它独特缓存和处理机制&#xff0c;默认颜色为黑色#000。系统在第一次添加surfac…

Android集成Cordova与Crosswalk

1. 介绍 1.1 Cordova Cordova是贡献给Apache后的开源项目&#xff0c;是从PhoneGap中抽出的核心代码&#xff0c;是驱动PhoneGap的核心引擎。Adobe将会继续以Cordova加上PhoneGap Build和Adobe Shadow的组合提供PhoneGap。 特性&#xff1a; ● 移动应用程序使用Html、Css、…

android crosswalk闪退,一篇文章读懂开源内嵌浏览器Crosswalk【转载】

本帖最后由 ecoolper 于 2014-12-24 17:55 编辑 Web技术的优势早已被广大 Crosswalk作为一款开源的web引擎&#xff0c;正是为了跨越这些障碍而生。目前Crosswalk正式支持的移动 Crosswalk有何优势&#xff1f; Crosswalk采用Chromium内核并不断地快速演进(六周一次更新)&#…

【Android】Crosswalk 开发浅析

最近的项目中&#xff0c;有用到phonegap&#xff0c;并需要展示一些需要高效渲染的网页&#xff0c;同情况下&#xff0c;IOS跑起来轻松无比&#xff0c;但是Webview。。。。&#xff08;泪奔&#xff09;&#xff0c;在焦头烂额的机型及版本适配中&#xff0c;发现了Crosswal…

android crosswalk 集成

crosswalk 集成 在项目根路径下的 build.gradle 中添加&#xff1a; buildscript {repositorities {……}}allprojects {repositories {……maven { url https://download.01.org/crosswalk/releases/crosswalk/android/maven2}}}在对应 module 的 build.gradle 中添加依赖&am…

Android 集成Chrome 浏览器内核 Crosswalk

Crosswalk 内核的兴起与消亡 Android 4.4 版本之前&#xff0c;使用的是基于 androidWebKit 的 WebView 但实际上&#xff0c;由于 Android 的碎片化问题&#xff08;大量存在不同的 Android 系统版本&#xff0c;并且各个厂商对内置应用进行定制化&#xff0c;有可能用的不是…

Android集成三方浏览器之Crosswalk

上一篇讲解了腾讯 X5 内核的集成&#xff0c;这一篇是讲解 Crosswalk 的集成 Crosswalk 也是采用了Chromenium 内核&#xff0c;是一款开源的 web 引擎&#xff0c;开发者可以直接把 Crosswalk 嵌入到应用之中&#xff0c;当然也支持共享模式&#xff08;系统中没有对应的 Cros…

CROSSWALK入门

Crosswalk是一款开源的web引擎。目前Crosswalk正式支持的移动操作系统包括Android和Tizen&#xff0c;在Android 4.0及以上的系统中使用Crosswalk的Web应用程序在HTML5方面可以有一致的体验&#xff0c;同时和系统的整合交互方面&#xff08;比如启动画面、权限管理、应用切换、…

Java和大数据的关系如何?

非常多的人&#xff0c;尤其是没有研究过&#xff0c;没有关注过这块知识的人都容易误解Java 和大数据的概念&#xff0c;甚至有些人认为大数据就是用java写的。 一&#xff1a;两者关系 java是计算机的一门编程语言&#xff1b;可以用来做很多工作&#xff0c;大数据开发属于…

java,大数据,

辅导&#xff0c;环境安装

Java?还是大数据?

IT 行业的人可能听过“ Java 大数据开发”这个名词&#xff0c;其实这并不是一个新岗位&#xff0c;而是因为大数据开发的编程语言以 Java 为主&#xff0c;掌握 Java 是进行大数据开发的基础&#xff0c;这才形成了“ Java 大数据开发”的说法。 随着 Java 开发岗人才供应趋于…

大数据开发-Java入门1

目录 1、计算机语言发展史1.1 计算机语言&#xff1a;1.2 常用的DOS命令&#xff1a; 2、java介绍与安装3、Java程序初体验3.1 Java开发三步走3.2 常见错误3.3 代码解释3.4 源文件名和类型 1、计算机语言发展史 1.1 计算机语言&#xff1a; 第一代&#xff1a;机器语言第二代…

JAVA 大数据方向 - 知识体系概况

JAVA 大数据方向 - 知识体系概况 想学后端&#xff0c;面临选方向&#xff0c;补充一下

学习Java大数据需要掌握哪些Java技能?

学习Java大数据需要掌握哪些Java技能&#xff1f;现在大数据发展很速度很多小伙伴想要学习Java大数据技术开发&#xff0c;但是学习大数据为什么需要掌握Java技能呢&#xff1f; 一、学大数据为什么要掌握Java&#xff1f; 首先&#xff0c;我们学习大数据&#xff0c;为什么要…

Java——处理大数据 BigInteger

整型 int型表示范围是&#xff1a;-(2的31次方) ~ (2的31次方) - 1 long型表示范围是&#xff1a;-(2的64次方) ~(2的64次方) - 1 浮点型 float和double是表示浮点型的数据类型&#xff0c;他们之间的区别在于他们的精确度不同float 3.402823e38 ~ 1.401298e-45&#xff08;e…

大数据必学Java基础(一百一十七):三个案例开发

文章目录 三个案例开发 一、记录请求日志 二、统计实时在线人数 三、项目重启免登录

大数据开发 - Java入门2

目录 Java基础知识注释关键字常量标识符测试题回顾 Java基础知识 注释 对程序的解释说明 分类&#xff1a; 单行注释&#xff1a;// 对本行后面的内容进行注释多行注释&#xff1a;/*解释内容 */文档注释 &#xff1a;/** 注释内容*/ --用于产生帮助文档&#xff0c;也有多行…

Java和大数据有什么联系?

提到Java&#xff0c;我们经常将它和大数据联系在一起。Java是一门面向对象编程语言&#xff0c;大数据是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合&#xff0c;是一个概念性的东西。那么&#xff0c;Java和大数据有什么关系呢? 简单的说Java语言是…

java到大数据学习路线

计算机网络 操作系统 数据结构 计算机组成原理 可重点学习如下知识点 计算机网络&#xff08;重点看 OSI七层模型 或 TCP/IP五层模型 理解每层含义&#xff09;数据结构&#xff08;重点看 数组、栈、队列、链表、树&#xff09;算法&#xff08;重点看 各种 排序算法、查…