簡體   English   中英

警告:找不到引用的類

[英]Warning:can't find referenced class

在Kotlin類中有一個名為onDelete方法。

override fun onDelete(position: Int) {
    templates?.apply {
         val deleteDialog = DeleteTemplateDialog(view.getViewContext())
            deleteDialog.confirmListener = {
                CustomTemplateRepository.getInstance().deleTemplate(this[position].templateId!!)
                        .subscribe({
                            deleteDialog.dismiss()
                            this.removeAt(position)
                            customTemplateAdapter?.notifyDataSetChanged()
                            view.showEmptyView(this.isEmpty())
                        }, {})
            }
    }
}

當我構建release-apk時,我啟用了proguard但由於以下警告而失敗了。

警告:com.uniquestudio.android.iemoji.module.library.customtemplate.MyTemplatePresenter $ onDelete $ 1 $ 1 $ 2:找不到引用的類com.uniquestudio.android.iemoji.module.library.customtemplate.MyTemplatePresenter $ onDelete $ 1 $ 1

當我使用dex2jar從debug-APK檢索此類時。 我懂了。

public void onDelete(final int paramInt)
{

    final DeleteTemplateDialog localDeleteTemplateDialog = new DeleteTemplateDialog(this.view.getViewContext());
    localDeleteTemplateDialog.setConfirmListenner((Function0)new Lambda(localArrayList)
    {
    public final Disposable invoke()
    {
        CustomTemplateRepository localCustomTemplateRepository = CustomTemplateRepository.Companion.getInstance();
        String str = ((Template)this.receiver$0.get(paramInt)).getTemplateId();
        if (str == null) {
        Intrinsics.throwNpe();
        }
        localCustomTemplateRepository.deleTemplate(str).subscribe((Action)new Action()
        {
        public final void run()
        {
            this.this$0.$deleteDialog.dismiss();
            this.this$0.receiver$0.remove(this.this$0.$position$inlined);
            CustomTemplateAdapter localCustomTemplateAdapter = MyTemplatePresenter.access$getCustomTemplateAdapter$p(this.this$0.this$0);
            if (localCustomTemplateAdapter != null) {
            localCustomTemplateAdapter.notifyDataSetChanged();
            }
            this.this$0.this$0.getView().showEmptyView(this.this$0.receiver$0.isEmpty());
        }
        }, (Consumer)MyTemplatePresenter.onDelete.1.1.2.INSTANCE);
    }
    });
}

我不知道:

  • 誰是com.uniquestudio.android.iemoji.module.library.customtemplate.MyTemplatePresenter$onDelete$1$1$2
  • 誰是com.uniquestudio.android.iemoji.module.library.customtemplate.MyTemplatePresenter$onDelete$1$1
  • 為什么第一個找不到引用的類

似乎是一個kotlin問題,這個問題可以在這里觀看: https ://youtrack.jetbrains.com/issue/KT-16084

重寫apply ,一切都應該有效......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM