本文档主要介绍 Weex 的重大变更,对于详细变更日志,请参考 Weex GitHub page.
下述在 0.28 中的重大变更只影响 Android 用户。
由于 Weex 在捐献给 ASF(Apache Software Foundation) 前隶属于阿里巴巴集团(淘宝的母公司),因此在 0.28.0
之前,Android 代码中的 Java 包名是 com.taobao.weex
从 0.28.0
之后,Android 代码中的 Java 包名被修改为 org.apache.weex
。考虑到这个升级会给现有用户来不兼容,weex 提供了 org.apache.weex:sdk_legacy
作为[兼容性方案]((#groupid-and-artifactid-in-jcenter)。这个兼容性方案后续可能不再维护,请尽可能的依 org.apache.weex:sdk
并将现有代码的包名升级为 org.apache.weex
。
由于 Weex 在捐献给 ASF(Apache Software Foundation) 前隶属于阿里巴巴集团(淘宝的母公司),因此在 0.28.0
之前,Android 代码中的 Java 包名是 com.taobao.weex
,因此在 0.28.0
之前,Weex 在JCenter 上的发布产物为 com.taobao.android:weex_sdk
从 0.28.0
之后,Weex 在 JCenter 上的发布变更为如下形式:
org.apache.weex:sdk
是稳定且持续维护的 aar 包,在这个包中所有的 Java 类在 org.apache.weex
包名下。org.apache.weex:sdk_legacy
是兼容性 aar 包,在这包中所有的 Java 类在 com.taobao.weex
包名下。兼容性包后续可能不再维护,请尽量升级到 org.apache.weex:sdk
上。在 0.28.0
之前, Weex Android 依赖并且将JavaScriptCore 作为 Weex 在 JCenter 上的发布产物的一部分,这种方式有如下缺陷:
基于上述原因,从 Weex 0.28.0 开始,JavaScript 引擎将不再内置于 Weex 在 JCenter 上的发布产物中,用户可以自由选择它们喜欢的 JavaScript 引擎,只要这个引擎遵循了指定接口。
这意味着用户需要在它们的 App 中内置 JavaScript 引擎,否则 Weex 将无法运行。对于不知道如何选择 JavaScript 用户的引擎,可以在 App 的 build.gradle 中引入下述脚本:
apply from: 'https://raw.githubusercontent.com/apache/incubator-weex/release/0.28/android/sdk/buildSrc/download_jsc.gradle'
这个脚本将会下载并内置jsc-android到你的 App 中。上述脚本仅为演示时使用,用户依然有权利在 App 中选择其符合其诉求的 JavaScript 引擎。