Android CheckList

新特性

  • 从官方036升级到041,使用新的Yoga渲染方式等等,EventEmitter提速等;
  • 正式引入RecycleView组件;
  • SDK化,不受大客户端的限制,引入配置更加简单轻松;
  • 丰富的接口回调,提供Js崩溃捕获(YErrorReportListener),性能检测(YPerformenceReportListener)和ReactRootView视图事件监听(YRootViewListener)等等;
  • 提供预加载桥接口,通过预加载可为页面打开增速200%
  • 全面支持Android N设备
  • QRN代码重构,性能提升

Android升级指南

Spider框架

所有依赖React组件的Atom组件都需要做如下修改

  1. atom.dps中react版本依赖改成24

修改后如下:

...
{
  "packageName": "com.mqunar.react",
  "versionCode": "24"
},
...
  1. 在配置依赖的gradle文件(如dependencies.gradle)中修改qrn依赖版本为2.0.0

修改后如下:

atomCompile 'com.qunar.spider:react:2.0.0@aar'

此外移除掉下面这些依赖:

compile 'com.qunar.3dparty:infer-annotations:{version}'
compile ('com.qunar.react:qunar-react-native-dependence:{version}'){
        exclude group: 'com.facebook.fresco', module: 'imagepipeline'
        exclude group: 'com.facebook.fresco', module: 'fbcore'
    }

独立App

TODO

关键变更

Text组件allowFontScaling属性

由于官方0.33版本并未支持allowFontScaling,我们默认将Adr设备Text组件字体单位从sp改成dp,现在RN官方为Adr加入allowFontScaling属性支持,默认为true,如果要保持与之前一致,请参考【禁用 QRN 中 Text 组件文本大小会随着系统设置变化的问题】修改。

类变更

  • Scheme头(比如'qunaraphone')配置需要自己在AndroidManifest.xml中配置;
  • QReactNative移除createRootViewUseBaseActivityWithListener的Api;
  • QReactNative移除createRootViewUseHelperWithListener的Api;
  • QReactNative移除registerBizJSBundleLoader的Api;
  • 移除QReactInstanceEventListener类;
  • 移除QRnActivityHelper
  • 移除createReactInstanceWithCallBack
  • 移除QReactInstanceCreateCallBack
  • 移除QStartManager
  • DeviceInfo模块移除atomVersion属性',有需要请使用QRCTAtomVersion['atomVersion']引用(该模块在NativeModules中)