gpt4 book ai didi

android - AAR 文件中的类在 Android Studio 中不可用

转载 作者:太空宇宙 更新时间:2023-11-03 13:40:32 25 4
gpt4 key购买 nike

我创建了一个库项目,我将其构建为 AAR 文件,然后将其包含在另一个项目中。它位于 libs 文件夹中,主 gradle.build 文件包含它:implementation fileTree(include: ['*.jar','*.aar'], dir: 'libs')

当我尝试使用这个 aar 文件的类时,除了一个类之外,所有类都可用。我一开始以为是Proguard,后来我连Proguard都去掉了,还是不可用。这是一个公共(public)类,甚至在我反编译 AAR 文件时它也存在。

这是内容:

package com.onboarding;

import android.content.Context;
import android.content.Intent;
import android.support.annotation.Keep;


/**
*
*/
@Keep
public class Builder {


/**
*
*/
public static String mainColor = null;
public static String baseUrl = null;
public static Class firstActivity = null;
public static Class onboardingSettingsActivity = null;


/**
*
*/
public static String tosUrl = null;
public static String privacyUrl = null;
public static String cookieUrl = null;
public static String contactsLearnMoreUrl = null;


/**
*
*/
private static Builder builder = null;


/**
*
*/
private Builder() {}


/**
*
*/
public static Builder init() {
if (builder == null) {
builder = new Builder();
}
return builder;
}


/**
*
*/
public void start(final Context context) {
final Intent intent = new Intent(context, Onboarding1.class);
context.startActivity(intent);
}


/**
*
*/
public Builder setMainColor(final String color) {
mainColor = color;
return this;
}


/**
*
*/
public Builder setBaseUrl(final String url) {
baseUrl = url;
return this;
}


/**
*
*/
public Builder setFirstActivity(final Class c) {
firstActivity = c;
return this;
}


/**
*
*/
public Builder setOnboardingSettingsActivity(final Class c) {
onboardingSettingsActivity = c;
return this;
}


/**
*
*/
public Builder setTosUrl(final String u) {
tosUrl = u;
return this;
}


/**
*
*/
public Builder setPrivacyUrl(final String u) {
privacyUrl = u;
return this;
}


/**
*
*/
public Builder setCookieUrl(final String u) {
cookieUrl = u;
return this;
}


/**
*
*/
public Builder setContactsLearnMoreUrl(final String u) {
contactsLearnMoreUrl = u;
return this;
}

}

知道为什么我不能从主项目访问这个类吗?

谢谢!

最佳答案

在随机工作然后不工作之后,Android Studio 中的 File -> Invalidate caches/restart 似乎成功了。

显然 Android Studio 缓存了 aar 的某些部分,即使是 CleanRebuild 也无法修复。

关于android - AAR 文件中的类在 Android Studio 中不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52770966/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com