如何从Android库

时间:2018-01-26 17:55:25

标签: android android-studio kotlin android-library

我写了一个已经上传到私人服务器的库。当我将库作为依赖项包含在我的应用程序项目中,并查看其中一个库类的源代码时,源代码实际上并未反编译。它只显示类名和方法。例如:

package com.example.library.ui

public final class RoundedDrawable public constructor() : android.graphics.drawable.Drawable {

    public final var backgroundColor: kotlin.Int /* compiled code */

    // ... other similar fields

    public open fun draw(canvas: android.graphics.Canvas): kotlin.Unit { /* compiled code */ }

    // ... other similar functions

}

如您所见,它只显示/* compiled code */个评论,而不是完整的源代码。有一个选项提供给"反编译为Java&#34 ;;哪个有效,但我更愿意看到Kotlin来源。这可能吗?

我发现similar question解释了如何显示原始Java代码,但没有为Kotlin提供任何内容。

1 个答案:

答案 0 :(得分:0)

你在使用Gradle吗?

You need to download sources for the library

idea {
    module {
        downloadJavadoc = true
        downloadSources = true
    }
}

如果找到附加的源/文档,IntelliJ将在查看.class文件时使用这些文件。

使用Maven,您可以使用右键单击 - >从工具窗口执行此操作。下载资源

除此之外,将.class文件反编译为Kotlin是不可能的,并且效果不错。 Despector有一个非常粗糙的Kotlin“反编译器”。