美文网首页
Android FAQ

Android FAQ

作者: 猎手Andy | 来源:发表于2019-12-27 17:34 被阅读0次

    编译问题

    android.enableJetifier=true android.useAndroidX=true (gradle.properties)

    AndroidX是为了解决各种官方的Support Library兼容包版本太多的问题,统一有AndroidX代替。 Refactor菜单中有一个功能可以将老代码Convert到AndroidX


    Migrate to AndroidX

    Jetifier是一个工具,在编译期间,它将Support Library的类库转换为AndroidX对应的类库。
    所以以上两项最好同时打开,以便支持AndroidX,自动将老的Support Library转换到AndroidX.

    Error: The processing instruction target matching "[xX][mM][lL]" is not allowed.

    xml文件中<?xml version="1.0" encoding="utf-8"?> 必须在文件第一行,前面不能有任何其他内容.

    compileSdkVersion,minSdkVersion,targetSdkVersion

    minSdkVersion (lowest possible) <= targetSdkVersion == compileSdkVersion (latest SDK)

    minSdkVersion 最小API Level, 当设备的API Level小于该值时将无法安装APK.

    compileSdkVersion 编译时的Sdk版本(API Level),尽量使用最新的API Level 如当前是29。
    编译后该属性不会在APK中。
    其它两个属性会在manifest中:

    <uses-sdk android:targetSdkVersion="23" android:minSdkVersion="15" />

    targetSdkVersion 设备的期望API Level,APP以该API Level的行为和Style渲染UI和API的行为。
    同样的API可能在不同的API Level上表现,不同此时可以用该版本来写兼容性代码。getApplicationInfo().targetSdkVersion < Buid.XXXX

    相关文章

      网友评论

          本文标题:Android FAQ

          本文链接:https://www.haomeiwen.com/subject/lgbdoctx.html