Smali 多索引 "has already been interned"

Smali multidex "has already been interned"

我正在尝试重建 multidex (classes2.dex),但是我收到以下 smali 错误:

shazaam.apk.dex2.smali\com\facebook\AdAction.smali[57,9] Class Lcom/facebook/ads/internal/action/AdAction; has already been interned
shazaam.apk.dex2.smali\com\facebook\AdActionFactory.smali[5,67] Class Lcom/facebook/ads/internal/action/AdActionFactory; has already been interned
shazaam.apk.dex2.smali\com\facebook\ads\Ad.smali[10,15] Class Lcom/facebook/ads/Ad; has already been interned

看起来每个 class 都有一个私有静态字段:

.class public Lcom/mopub/mobileads/factories/CustomEventBannerFactory;
.super Ljava/lang/Object;
.source "SourceFile"
.field private static a:Lcom/mopub/mobileads/factories/CustomEventBannerFactory;

错误的真正含义是什么?

这可能意味着对于每个提到的 类.

,您有一个以上的 .smali 文件

如果不是这种情况,那么这可能是 smali 中的错误 - 可以在 https://github.com/JesusFreke/smali/issues

上报告