既然 kotlin-android-extensions 已被弃用,如何使用 @Parcelize? [英] How to use @Parcelize now that kotlin-android-extensions is being deprecated?

查看:680
本文介绍了既然 kotlin-android-extensions 已被弃用,如何使用 @Parcelize?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何将 package kotlinx.android.parcel 中的 annotation class Parcelize 替换为不是来自 kotlin-android-extensions 插件的 Parcelize?

How do I replace annotation class Parcelize from package kotlinx.android.parcel with Parcelize which is not coming from the kotlin-android-extensions plugin?

推荐答案

这应该是新插件:https://plugins.gradle.org/plugin/org.jetbrains.kotlin.plugin.parcelize

如果使用插件 DSL,您可以在子模块中使用插件 ID.确保项目的类路径中提供了最新的 Kotlin Android 插件.

If using Plugins DSL you can use the plugin ID in submodules. Make sure that the latest Kotlin Android plugin is available from the project's classpath.

// project build.gradle
plugins {
    ..
    id "org.jetbrains.kotlin.android" version "1.4.20" apply false
}

// app build.gradle
plugins {
    ..
    id 'kotlin-parcelize'
}

使用 kts 时可以写 ->

When using kts you can write ->

// project build.gradle.kts
plugins {
    ..
    kotlin("android") version "1.4.20" apply false
}

// app build.gradle.kts
plugins {
    ..
    id("kotlin-parcelize")
}

--- 或旧插件应用程序 ---

--- OR Legacy Plugin Application ---

步骤 1.更新到最新的 kotlin 版本 - 1.4.20 并替换

Step 1. Update to latest kotlin version - 1.4.20 and replace

apply plugin: 'kotlin-android-extensions'

有了这个 ->

apply plugin: 'kotlin-parcelize'

第 2 步.从 android {}

Step 2. Remove this code from the android {}

androidExtensions {
    experimental = true
}

第 3 步.最后,替换旧的 import ->

Step 3. Finally, replace old import ->

import kotlinx.android.parcel.Parcelize

新导入

import kotlinx.parcelize.Parcelize

这篇关于既然 kotlin-android-extensions 已被弃用,如何使用 @Parcelize?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆