Last active
July 28, 2022 12:08
-
-
Save iflove/727a0f4d92ecd1f07abc807b01194223 to your computer and use it in GitHub Desktop.
Android应用日常异常日志收录
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Android应用日常异常日志收录 |
申请内存时失败
java.lang.OutOfMemoryError: Failed to allocate a 12 byte allocation with 0 free bytes and 3GB until OOM
申请内存发生OutOfMemoryError,又捕获了OutOfMemoryError,值到no stack trace available
java.lang.OutOfMemoryError: OutOfMemoryError thrown while trying to throw OutOfMemoryError; no stack trace available
系统发送崩溃, 原因未知
Process: cn.mashang.vscreen.base:crashDaemon, PID: 1090
java.lang.RuntimeException: Unable to create application cn.mashang.vscreen.VSApp: java.lang.NullPointerException
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4568)
at android.app.ActivityThread.access$1500(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1402)
at android.os.Handler.dispatchMessage(Handler.java:110)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:5323)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:825)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:641)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at cn.mashang.groups.MGApp.J(MGApp.java:4)
at cn.mashang.groups.MGApp.L(MGApp.java:2)
at cn.mashang.vscreen.VSApp.import(VSApp.java:1)
at cn.mashang.groups.MGApp.onCreate(MGApp.java:3)
at cn.mashang.vscreen.VSApp.onCreate(VSApp.java:4)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4565)
... 10 more
Error reporting crash
android.os.DeadObjectException
at android.os.BinderProxy.transact(Native Method)
at android.app.ActivityManagerProxy.handleApplicationCrash(ActivityManagerNative.java:3845)
at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:84)
at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
Error reporting crash
android.os.DeadObjectException
at android.os.BinderProxy.transact(Native Method)
at android.app.ActivityManagerProxy.handleApplicationCrash(ActivityManagerNative.java:3845)
at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:84)
at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
at dalvik.system.NativeStart.main(Native Method)
FATAL EXCEPTION: ContactsProviderWorker
Process: android.process.acore, PID: 955
java.lang.NullPointerException
at android.accounts.AccountManager.getAccounts(AccountManager.java:383)
at com.android.providers.contacts.ContactsProvider2.performBackgroundTask(ContactsProvider2.java:1793)
at com.android.providers.contacts.ContactsProvider2$2.handleMessage(ContactsProvider2.java:9988)
at android.os.Handler.dispatchMessage(Handler.java:110)
at android.os.Looper.loop(Looper.java:193)
at android.os.HandlerThread.run(HandlerThread.java:61)
Error reporting crash
android.os.DeadObjectException
at android.os.BinderProxy.transact(Native Method)
at android.app.ActivityManagerProxy.handleApplicationCrash(ActivityManagerNative.java:3845)
at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:84)
at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
Failed to find provider info for com.android.contacts
内存泄露导致的系统的broadcast功能异常(向系统注册过多广播)
android.app.RemoteServiceException: can't deliver broadcast
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1656)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6141)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:913)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:803)
sqlite 相关错误收集, 可能磁盘空间不足,还有就是写入数据过程中突然掉电等。
database disk image is malformed
android.database.sqlite.SQLiteDiskIOException
android.database.sqlite.SQLiteCantOpenDatabaseException
android.database.sqlite.SQLiteDatabaseLockedException
fragment 官方组件缺陷 (项目中出现的viewpager+fragment自动切换,导致索引为-1,removeViewAt(-1))
issues
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.unFocus(android.view.View)' on a null object reference
at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:3757)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3723)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3697)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3671)
at android.app.ActivityThread.-wrap16(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1495)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6141)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:912)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:802)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.unFocus(android.view.View)' on a null object reference
at android.view.ViewGroup.removeViewInternal(ViewGroup.java:4702)
at android.view.ViewGroup.removeViewAt(ViewGroup.java:4665)
at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1796)
at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManager.java:1852)
at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManager.java:3269)
at androidx.fragment.app.FragmentManagerImpl.dispatchPause(FragmentManager.java:3245)
at androidx.fragment.app.Fragment.performPause(Fragment.java:2641)
at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManager.java:1512)
at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1784)
at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManager.java:1852)
at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManager.java:3269)
at androidx.fragment.app.FragmentManagerImpl.dispatchPause(FragmentManager.java:3245)
at androidx.fragment.app.FragmentController.dispatchPause(FragmentController.java:234)
at androidx.fragment.app.FragmentActivity.onPause(FragmentActivity.java:476)
at cn.mashang.groups.ui.base.BaseFragmentActivity.onPause(BaseFragmentActivity.java:100)
at cn.mashang.groups.ui.base.MGBaseFragmentActivity.onPause(MGBaseFragmentActivity.java:218)
at cn.mashang.vscreen.ui.VSStart.onPause(VSStart.java:1952)
at android.app.Activity.performPause(Activity.java:6849)
at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1322)
at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:3746)
fd 资源泄露 /proc/pid/fd
javax.net.ssl.SSLException: Unable to create application data
java.net.SocketException: Too many open files
断电Android 设备丢失数据
2022-02-14 16:39:02.115 3871-3871/cn.mashang.vscreen.base E/MMKV: <MMKV_IO.cpp:74::loadFromFile> file [/data/user/0/cn.mashang.vscreen.base/files/mmkv/mmkv_vs_default] not valid
2022-02-14 16:39:02.764 3871-3918/cn.mashang.vscreen.base E/SharedPreferencesImpl: Couldn't rename file /data/user/0/cn.mashang.vscreen.base/shared_prefs/default_v2.xml to backup file /data/user/0/cn.mashang.vscreen.base/shared_prefs/default_v2.xml.bak
模块implementation
引用 aar 文件打包, 采用compileOnly
Direct local .aar file dependencies are not supported when building an AAR.
放弃写Settings.System,改用Settings.Global保存共享数据。
java.lang.IllegalArgumentException: You cannot keep your settings in the secure settings.
是否转用了AndroidX
java.lang.IllegalArgumentException: Missing android.support.FILE_PROVIDER_PATHS meta-data
检查:
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="${applicationId}.provider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
原因未知
CrashReport: java.lang.RuntimeException: Unable to destroy activity {cn.mashang.vscreen.base/cn.mashang.vscreen.ui.VSStart}: java.lang.ClassCastException: android.view.ViewRootImpl cannot be cast to android.view.ViewGroup
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:5105)
at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:5135)
at android.app.ActivityThread.handleRelaunchActivityInner(ActivityThread.java:5427)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:5357)
at android.app.servertransaction.ActivityRelaunchItem.execute(ActivityRelaunchItem.java:69)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ClientTransactionHandler.executeTransaction(ClientTransactionHandler.java:58)
at android.app.ActivityThread.handleRelaunchActivityLocally(ActivityThread.java:5410)
at android.app.ActivityThread.access$3300(ActivityThread.java:237)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2076)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7660)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
Caused by: java.lang.ClassCastException: android.view.ViewRootImpl cannot be cast to android.view.ViewGroup
at androidx.fragment.app.SpecialEffectsController$Operation$State.applyState(SpecialEffectsController.java:464)
at androidx.fragment.app.SpecialEffectsController$1.run(SpecialEffectsController.java:211)
at androidx.fragment.app.SpecialEffectsController$Operation.complete(SpecialEffectsController.java:713)
at androidx.fragment.app.SpecialEffectsController$FragmentStateManagerOperation.complete(SpecialEffectsController.java:770)
at androidx.fragment.app.SpecialEffectsController$Operation.cancel(SpecialEffectsController.java:615)
at androidx.fragment.app.SpecialEffectsController.forceCompleteAllOperations(SpecialEffectsController.java:350)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2844)
at androidx.fragment.app.FragmentManager.dispatchDestroyView(FragmentManager.java:2812)
at androidx.fragment.app.Fragment.performDestroyView(Fragment.java:3225)
at androidx.fragment.app.FragmentStateManager.destroyFragmentView(FragmentStateManager.java:744)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:327)
at androidx.fragment.app.SpecialEffectsController$FragmentStateManagerOperation.complete(SpecialEffectsController.java:771)
at androidx.fragment.app.SpecialEffectsController$Operation.cancel(SpecialEffectsController.java:615)
at androidx.fragment.app.SpecialEffectsController.forceCompleteAllOperations(SpecialEffectsController.java:350)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2844)
at androidx.fragment.app.FragmentManager.dispatchDestroy(FragmentManager.java:2820)
at androidx.fragment.app.FragmentController.dispatchDestroy(FragmentController.java:345)
at androidx.fragment.app.FragmentActivity.onDestroy(FragmentActivity.java:306)
at cn.mashang.groups.ui.base.BaseFragmentActivity.onDestroy(BaseFragmentActivity.java:161)
at cn.mashang.groups.ui.base.MGBaseFragmentActivity.onDestroy(MGBaseFragmentActivity.java:180)
at cn.mashang.vscreen.ui.VSGetRfidActivity.onDestroy(VSGetRfidActivity.java:452)
at cn.mashang.vscreen.ui.VSStart.onDestroy(VSStart.java:2032)
at android.app.Activity.performDestroy(Activity.java:8273)
at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1344)
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:5090)
源码出错点:
void applyState(@NonNull View view) { //view 是Fragment的根view,是oncreateView时赋值的,排查了ViewRootImpl 还是没搞明白
switch (this) {
case REMOVED:
ViewGroup parent = (ViewGroup) view.getParent(); //ClassCastException
通过一个LazyAttachFragmentLayout 解决,RecycleView回收时间和fragment事务提交点碰合了. 不要在list.item 频繁操作fragment
java.lang.IllegalArgumentException: No view found for id 0xd3 (unknown) for fragment VsGonggeItemFragment{2be0e53} (4e43eaf2-29a8-4697-95d8-563b3c743a8e id=0xd3 tag=256:259:0:0)
at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:513)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:261)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1758)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1701)
at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:488)
at android.os.Handler.handleCallback(Handler.java:755)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6141)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:912)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:802)
网络异常
OKHttp
java.net.ProtocolException: unexpected end of stream
okhttp3.internal.http1.Http1Codec.FixedLengthSink#close
原因是服务器流被关闭,可能原因:
(1) 在抛出java.net.ProtocolException: unexpected end of stream异常之后,确认一下fileLength和contentLength是否一致, 如果不一致的情况下, 可以设置Transfer-Encoding : chunked来躲过客户端的校验
(2) 针对一个资源或者同一个服务器的频繁请求,最好设置Connection : close,这样可以防止服务器出现反攻击的问题,服务器发现某短时间的请求过于频繁切长期保持长链接,会引发服务器的瘫痪,所以针对服务器的长链接请求会dismiss掉,导致当前请求异常。
安装apk
apk 解包时存储不够导致失败
D/InstallAppProgress: Installation error code: 1
INSTALL_FAILED_INSUFFICIENT_STORAGE
Choreographer 未知错误
java.lang.NullPointerException
Attempt to invoke virtual method 'android.view.DisplayListCanvas android.view.RenderNode.start(int, int)' on a null object reference
android.view.ViewRootImpl.draw(ViewRootImpl.java:2800)
android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2608)
android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2215)
android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1254)
android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6338)
android.view.Choreographer$CallbackRecord.run(Choreographer.java:874)
android.view.Choreographer.doCallbacks(Choreographer.java:686)
android.view.Choreographer.doFrame(Choreographer.java:621)
android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860)
android.os.Handler.handleCallback(Handler.java:755)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:154)
android.app.ActivityThread.main(ActivityThread.java:6141)
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:912)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:802)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
弹窗show异常
弹窗主题缺少一些属性:
TODO