我在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所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)