异常java.lang.NoClassDefFoundError:pim

异常java.lang.NoClassDefFoundError:pim,第1张

概述我在CrashReporting中遇到了这个崩溃:Exceptionjava.lang.NoClassDefFoundError:pimpil.<clinit>(SourceFile:2)pij.onAnimationEnd(SourceFile:10)android.animation.AnimatorSet$AnimatorSetListener.onAnimationEnd(AnimatorSet.java:818)android.animation.Va

我在Crash Reporting中遇到了这个崩溃:

Exception java.lang.NoClassDefFoundError: pimpil.<clinit> (Sourcefile:2)pij.onAnimationEnd (Sourcefile:10)androID.animation.AnimatorSet$AnimatorSetListener.onAnimationEnd     (AnimatorSet.java:818)androID.animation.ValueAnimator.endAnimation (ValueAnimator.java:1056)androID.animation.ValueAnimator.access0 (ValueAnimator.java:50)androID.animation.ValueAnimator$AnimationHandler.doAnimationFrame     (ValueAnimator.java:644)androID.animation.ValueAnimator$AnimationHandler.run (ValueAnimator.java:660)androID.vIEw.Choreographer$CallbackRecord.run (Choreographer.java:761)androID.vIEw.Choreographer.doCallbacks (Choreographer.java:574)androID.vIEw.Choreographer.doFrame (Choreographer.java:543)androID.vIEw.Choreographer$FramedisplayEventReceiver.run     (Choreographer.java:747)androID.os.Handler.handleCallback (Handler.java:733)androID.os.Handler.dispatchMessage (Handler.java:95)androID.os.Looper.loop (Looper.java:136)androID.app.ActivityThread.main (ActivityThread.java:5154)java.lang.reflect.Method.invokeNative (Method.java)java.lang.reflect.Method.invoke (Method.java:515)com.androID.internal.os.ZygoteInit$MethodAndArgsCaller.run     (ZygoteInit.java:732)com.androID.internal.os.ZygoteInit.main (ZygoteInit.java:566)dalvik.system.NativeStart.main (NativeStart.java)

在我将recyclelVIEw添加到我的布局和更多代码之后,它开始发生了,但我怀疑它:

com.testapp.MyRecyclerVIEwandroID:layout_wIDth="wrap_content"androID:layout_height="wrap_content"androID:ID="@+ID/recycleVIEwImages"

这是我的自定义recyclervIEw,但即使使用常规的recyclervIEw(不是我的自定义),这个错误也会发生

这是我的customvIEw的代码:

public class MyRecyclerVIEw extends RecyclerVIEw {private FirebaseAnalytics mFirebaseAnalytics = null;public MyRecyclerVIEw(Context context) {    super(context);    if (mFirebaseAnalytics == null && context != null) {        mFirebaseAnalytics = FirebaseAnalytics.getInstance(context);    }}public MyRecyclerVIEw(Context context, @Nullable AttributeSet attrs) {    super(context, attrs);    if (mFirebaseAnalytics == null && context != null) {        mFirebaseAnalytics = FirebaseAnalytics.getInstance(context);    }}public MyRecyclerVIEw(Context context, @Nullable AttributeSet attrs, int defStyle) {    super(context, attrs, defStyle);    if (mFirebaseAnalytics == null && context != null) {        mFirebaseAnalytics = FirebaseAnalytics.getInstance(context);    }}@OverrIDeprotected voID onAnimationEnd() {    try {        super.onAnimationEnd();    }    catch (Exception e) {        Log.d("erez", "animation onAnimationEnd");        if (mFirebaseAnalytics != null && e != null && e.getMessage() != null) {            Bundle bundleCatch = new Bundle();            bundleCatch.putString(FirebaseAnalytics.Param.ITEM_ID, "myrecyclevIEw e: " + e.getMessage());            bundleCatch.putString(FirebaseAnalytics.Param.ITEM_name, "myrecyclevIEw e: " + e.getMessage());            bundleCatch.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "onAnimationEnd catched");        mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundleCatch);        }    }    catch (NoClassDefFoundError ncdfe) {        if (mFirebaseAnalytics != null && ncdfe != null && ncdfe.getMessage() != null) {            Bundle bundleCatch = new Bundle();            bundleCatch.putString(FirebaseAnalytics.Param.ITEM_ID, "myrecyclevIEw ncdfe: " + ncdfe.getMessage());            bundleCatch.putString(FirebaseAnalytics.Param.ITEM_name, "myrecyclevIEw ncdfe: " + ncdfe.getMessage());            bundleCatch.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "onAnimationEnd catched");          mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundleCatch);        }    }}

}

如您所见,我正在尝试覆盖onAnimationEnd以便将catch日志写入firebase但是它没有被捕获并仍然为用户崩溃.

无论如何,这个MyRecyclerVIEw作为我的Activity中的成员保存:

我通过findVIEwByID设置它,然后:

linearlayoutmanager layoutManager = new linearlayoutmanager(Player.this);    if (mScreenorIEntation == Configuration.ORIENTATION_PORTRAIT) {        layoutManager.setorIEntation(linearlayoutmanager.HORIZONTAL);    } else if (mScreenorIEntation == Configuration.ORIENTATION_LANDSCAPE) {        layoutManager.setorIEntation(linearlayoutmanager.VERTICAL);    }    mRecycleVIEwPrevIEwedVIDeos.setLayoutManager(layoutManager);

然后我设置其适配器,如用户所见.没什么特别的.
我知道VIEw有一个名为onAnimationEnd的方法,但它从未在我的智能手机中达到它.它主要是在API 19上达成的. (还有17和18).

有没有人遇到过这次事故?怎么解决?

UPDATE

我在这里报告了这个错误:https://issuetracker.google.com/issues/73048586

解决方法:

所以我向谷歌报告了这个问题,现在他们回答说这个错误是修复的! :-)我想不需要更新库,因为没有可用的更新.此外,我还试图使用一个旧的YouTube API库,但同样崩溃,因此与图书馆的关系. Google给我写道:“开发团队已经修复了您报告的问题,并且将在未来版本中提供.”

总结

以上是内存溢出为你收集整理的异常java.lang.NoClassDefFoundError:pim全部内容,希望文章能够帮你解决异常java.lang.NoClassDefFoundError:pim所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1098561.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存