Weex系列(9) —— Weex和安卓升级兼容

目录

最近刚升级,先新开一章记录一下吧,怕忘了(doge)。html

一、Weex升级相关java

iOS:android

pod 'WeexSDK', '0.20.1'

目前来看却是没有什么问题,后续再说。
Android:web

compile 'com.taobao.android:weex_sdk:0.20.0.2'

Android就有问题喽,一堆以下的问题。方法接口什么的直接移除,真是个狠人啊,这个只能你们一个个文件去改喽,官网连接:https://weex.apache.org/zh/gu...apache

好比我这边是把segmentfault

public GifImage(WXSDKInstance instance, WXDomObject dom, WXVContainer parent) {
        super(instance, dom, parent);
    }

换成:weex

@Deprecated
    public GifImage(WXSDKInstance instance, WXVContainer parent, String instanceId, boolean isLazy, BasicComponentData basicComponentData) {
        this(instance, parent, basicComponentData);
    }
    public GifImage(WXSDKInstance instance,
                  WXVContainer parent, BasicComponentData basicComponentData) {
        super(instance, parent, basicComponentData);
    }

clipboard.png

二、安卓升级相关dom

升级以前先来解释3个sdk吧:ide

原文章:https://medium.com/androiddev...ui

compileSdkVersion

compileSdkVersion是告诉Gradle用哪一个版本Android SDK编译应用程序。使用新API的时候,就须要升级对应版本的Android SDK了。

应该强调的是,更改compileSdkVersion不会改变运行时行为。虽然更改compileSdkVersion时可能存在新的编译器警告/错误,但您的compileSdkVersion不包含在您的APK中:它纯粹在编译时使用。 (你应该确实修复这些警告 - 它们是由于某种缘由而添加的!)

所以,强烈建议您始终使用最新的SDK进行编译。您将得到对现有代码进行新编译检查的全部好处,避免新弃用的API,并准备好使用新API。

minSdkVersion

若是compileSdkVersion表示可否能用最新API,那minSdkVersion就是应用能运行的最低版本,若是用户的装置小于这个值,在Google Play商店就会不显示。


我在网上搜了一下设置1四、15基本就是底线了,能覆盖Google Play商店99.9%的用户吧。

targetSdkVersion

三者中最有趣的是targetSdkVersion。targetSdkVersion是Android 提供向前兼容的主要依据。


好比用户系统是26,如今升级到了27,其中有一个方法26和27是不一样的,可是若是应用的targetSdkVersion设置的是26,应用仍旧使用的是26的方法。

在升级的过程当中主要遇到的就是下面这个错误:

clipboard.png

在stackoverflow上找的解决办法:https://stackoverflow.com/que...

A. Add this line in the defaultConfig section to enable multiDex

multiDexEnabled true

B. Than set the dexOptions, like this:

dexOptions {
    incremental true
    javaMaxHeapSize "4G"
}

我这边改完如图:
clipboard.png

最后仍是感谢你们,若是喜欢欢迎点赞收藏啊~

相关文章
相关标签/搜索